美文网首页
Android快速开发架构PlanA(八),手滑搞了个万能适配器

Android快速开发架构PlanA(八),手滑搞了个万能适配器

作者: Alt丶 | 来源:发表于2018-07-26 11:23 被阅读0次

    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.png

    2.开始使用

    • 将新建的类继承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类中有详细注释说明

    相关文章

      网友评论

          本文标题:Android快速开发架构PlanA(八),手滑搞了个万能适配器

          本文链接:https://www.haomeiwen.com/subject/tupvmftx.html