通用 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);
}
}
}
Charlotte's Web
E. B. White / Scholastic / 2004 / USD 0.01
This is the tale of how a little girl named Ferm, with the help of a friendly spider, saved her pig, Wilbur, from the usual fate of nice fat little pigs.一起来看看 《Charlotte's Web》 这本书的介绍吧!




