通用 Adapter 和 ViewHolder BGAAdapter
- 授权协议: Apache 2.0
- 开发语言: Java
- 操作系统: Android
- 软件首页: https://github.com/bingoogolapple/BGAAdapter-Android
- 软件文档: https://github.com/bingoogolapple/BGAAdapter-Android/blob/master/README.md
- 官方下载: https://github.com/bingoogolapple/BGAAdapter-Android/archive/master.zip
软件介绍
在AdapterView和RecyclerView中通用的Adapter和ViewHolder,使AdapterView和RecyclerView适配器的使用方式基本一致。
效果图:
示例代码:
使用非常简单,这里展示一下ListView和RecyclerView实现qq聊天界面的适配器。
public class ListChatAdapter extends BGAAdapterViewAdapter<ChatModel> {
public ListChatAdapter(Context context) {
super(context, R.layout.item_chat);
}
/**
* 为item的孩子节点设置监听器,并不是每一个数据列表都要为item的子控件添加事件监听器,所以在父类中采用了空实现,需要设置事件监听器时重写该方法即可
*
* @param viewHolderHelper
*/
@Override
protected void setItemChildListener(BGAViewHolderHelper viewHolderHelper) {
}
@Override
public void fillData(BGAViewHolderHelper viewHolderHelper, int position, ChatModel model) {
if (model.mUserType == ChatModel.UserType.From) {
viewHolderHelper.setVisibility(R.id.rl_item_chat_to, View.GONE);
viewHolderHelper.setVisibility(R.id.rl_item_chat_from, View.VISIBLE);
String htmlMsg = String.format(mContext.getString(R.string.color_msg_from), model.mMsg);
viewHolderHelper.setHtml(R.id.tv_item_chat_from_msg, htmlMsg);
} else {
viewHolderHelper.setVisibility(R.id.rl_item_chat_from, View.GONE);
viewHolderHelper.setVisibility(R.id.rl_item_chat_to, View.VISIBLE);
String htmlMsg = String.format(mContext.getString(R.string.color_msg_to), model.mMsg);
viewHolderHelper.setHtml(R.id.tv_item_chat_to_msg, htmlMsg);
}
}
}
C++程序设计语言
Bjarne Stroustrup / 裘宗燕 / 机械工业出版社 / 2010-3-1 / 99.00元
本书是在C++语言和程序设计领域具有深远影响、畅销不衰的著作,由C++语言的设计者编写,对C++语言进行了最全面、最权威的论述,覆盖标准C++以及由C++所支持的关键性编程技术和设计技术。本书英文原版一经面世,即引起业内人士的高度评价和热烈欢迎,先后被翻译成德、希、匈、西、荷、法、日、俄、中、韩等近20种语言,数以百万计的程序员从中获益,是无可取代的C++经典力作。 在本书英文原版面世10年......一起来看看 《C++程序设计语言》 这本书的介绍吧!




