在RecyclerView的Adapter实现中是没有getView()办法的,下面我们就分析一下getView()办法若何拆分,一般情况下我们在实现getView()办法都是如下贱程。
- public View getView(int position, View convertView, ViewGroup parent) {
- ViewHolder holder = null;
- if (null == convertView) {
- //填充构造
- convertView=inflater.inflate(R.layout.item_layout, parent,false);
- holder = new ViewHolder();
- //经由过程ID萌芽控件
- holder.textView=(TextView)convertView.findViewById(R.id.textView);
- holder.imageView=(ImageView)convertView.findViewById(R.id.imageView);
- convertView .setTag(holder);
- } else {
- holder = (ViewHolder) convertView.getTag();
- }
- //赋值逻辑
- return convertView;
- }
- //一个空的ViewHolder
- public static class ViewHolder{
- TextView textView;
- ImageView imageView;
- }
Java编程比较风行的一种编程方法不是说面向接口编程吗,在Android开辟中也有一个开辟方法叫做面向Holder的编程,膳绫擎代码是传统的实现ViewHolder的方法,说句实现话就没做什么事,就是作为一个载体承载着我们须要的控件。我们让ViewHolder多做一些工作,让它在convertView==null情况下须要做的多半逻辑都放到ViewHolder中去。
推荐阅读
【海外风向标】阿斯利康公司CIO:想数字化转型成功?先给高层们“讲故事”吧
Dave Smoley比来停止了一个为期三年的数字化改革过程,固然大年夜多半CIO们可能会在此时打开一瓶喷鼻槟庆贺,但这位阿斯利康集团的IT引导人已经把计谋重点缀向了成长和立异。Smoley给所有>>>详细阅读
本文标题:Android 自定义 BaseAdapter 最佳实践
地址:http://www.17bianji.com/lsqh/35318.html
1/2 1