ListView——HolderView方式
来源:互联网 发布:java定时器 任务超时 编辑:程序博客网 时间:2024/04/30 11:02
HolderView方式
在HolderView方式中,目的同样是为了避免反复的调用findViewById,但是我们将这个findViewByIdde 任务交给了一个HolderView对象
@Overridepublic View getView(int i, View convertView, ViewGroup viewGroup) { HolderView holderView; // Important to not just null check, but rather to a instanceof // since we might get any subclass of view here. if (convertView instanceof HolderView) { holderView = (HolderView) convertView; } else { holderView = new HolderView(mContext); } holderView.bind("标题", R.drawable.ic_launcher, "sajsa"); return holderView;}public class HolderView extends GridLayout { private ImageView img; private TextView title; private TextView info; public HolderView(Context context, AttributeSet attrs) { super(context, attrs); View v = LayoutInflater.from(context).inflate(R.layout.list_item, this); title = (TextView) v.findViewById(R.id.title); img = (ImageView)item.findViewById(R.id.img) info = (TextView)item.findViewById(R.id.info); } public void bind(String stringtitle,int imgrsc, String stringinfo) { title.setText(stringtitle); img.setImageResource(imgrsc); info.setText(stringinfo); }}
HolderView自己维护一个子元素的集合,同时对外提供绑定数据的公共方法bind。HolderView方式的思想是:对于ListView来讲,每一个Item本身是同一个类只是数据不同。 但是需要注意的是使用HolderView方式在Adapter中getView返回的是HolderView对象。
总结:ViewHolder方式使用简单,HolderView方式更符合面向对象规范。
0 0
- ListView——HolderView方式
- 从HolderView加载ListView异常
- ListView优化adapter getview的两种方式ViewHolder vs HolderView
- ListView优化adapter getview的两种方式ViewHolder vs HolderView
- ListView优化adapter getview的两种方式ViewHolder vs HolderView
- 关于listview中是用多个布局 并使用holderView 缓存机制的问题
- ViewHolder vs HolderView
- ViewHolder VS HolderView ?
- HolderView vs ViewHolder实例
- listView——animation xml方式输出实现动画效果
- Android学习 —— 多种适配器方式实现ListView
- Android学习笔记(10)————Android的Listview详解1(ArrayAdapter方式)
- Android学习笔记(10)————Android的Listview详解1(ArrayAdapter方式) .
- listView扩展2——java代码方式实现animation动画输出
- android——给ListView添加点击事件的三种方式
- 【进阶android】ListView源码分析——子视图的七种填充方式
- 【Android】通用系列 —— 用简单通用的方式操作ListView
- 带checkbox的ListView实现—数据与渲染完全分离的传统实现方式
- 基于模板元编程技术的跨平台C++动态链接加载库
- C++ 希尔排序算法
- 英国政府开源了其大规模监控软件
- 什么是持久化? 为什么要持久化?
- Your build settings specify a provisioning profile with the UUID
- ListView——HolderView方式
- opencv笔记 5.形态学滤波
- python反射机制
- 基础控件之UILabel、UIButton、UITextField、UIAlertView、 UIImageView
- linux 下core文件的设置
- ARM仿真器总结
- 《python识别验证码》
- 避免App沦为“僵尸”的12个秘诀
- Elasticsearch in java 范例:自动补齐功能(completion suggester)