Android快速开发架构PlanA,一周一个APP,持续维护中!
Android快速开发架构PlanA(一),船新版本的BaseActivity
Android快速开发架构PlanA(二),简单粗暴的路由管理PRouter
Android快速开发架构PlanA(三),你一定会用上的工具类
Android快速开发架构PlanA(四),网络请求篇,划重点(必考)
Android快速开发架构PlanA(五),文件上传下载了解一下
Android快速开发架构PlanA(六),抱歉,这些自定义控件真的可以让你为所欲为
Android快速开发架构PlanA(七),隐藏技能:PhotoBrowse图片浏览
Android快速开发架构PlanA(八),手滑搞了个万能适配器CommonAdapter
ListView和GridView用起来是爽,但是这个适配器写起来是真的打脑壳;所以叻,就需要封装一个CommonAdapter万能适配器;CommonAdapter万能适配器将减少你60%的代码量。
1.效果实例
CommonAdapter ListView/GridView.png2.开始使用
- 将新建的类继承CommonAdapter即可(泛型需要传入你的实体模型)
public class MyAdapter extends CommonAdapter<MusicModel> {
public MyAdapter(Context mContext, List<MusicModel> list, int resLayoutId) {
super(mContext, list, resLayoutId);
}
@Override
public void convert(Converter holder, final MusicModel item,final int position) {
holder.setImageResource(R.id.iv,item.getImage());
holder.setText(R.id.titleTv,item.getTitle());
holder.setText(R.id.timeTv,item.getTime());
holder.setOnClickListener(R.id.icDel, new View.OnClickListener() {
@Override
public void onClick(View v) {
ToastUtils.showShort(getContext(),"位置:"+position);
}
});
}
}
- ListView或者GridView设置适配器
List<MusicModel> musicModelList = new ArrayList<>();
musicModelList.add(new MusicModel("http://tx.haiqq.com/uploads/allimg/170509/0R653-3.jpg","许嵩-摄影艺术","04:27"));
musicModelList.add(new MusicModel("http://www.jqff.com.cn/Upload/FCKEditor/37-6-50.jpg","赵雷-成都","06:18"));
musicModelList.add(new MusicModel("http://mp2.qiyipic.com/image/20180415/39/89/p300.jpg","冯提莫-再见前任","03:20"));
musicModelList.add(new MusicModel("http://img4.cache.netease.com/cnews/2014/3/4/207eab.jpg","陈奕迅-约定","05:36"));
MyAdapter myAdapter = new MyAdapter(this, musicModelList,R.layout.adapter_item);
listView.setAdapter(myAdapter);
PS:convert方法中holder提供的方法在Converter类中有详细注释说明
网友评论