你的位置:首页 > 软件开发 > 操作系统 > Android应用系列:值得收藏的ViewHolder工具类实现

Android应用系列:值得收藏的ViewHolder工具类实现

发布时间:2015-05-05 00:00:23
前言  在开发APP的过程中,攻城狮少不了要跟ListView、GridView这些组件眉来眼去,暗送几波秋波。自然原生态美人BaseAdapter更是程序员的最爱,有了它,我们想怎么干就能怎么干,嘿嘿,你懂的O(∩_∩)O哈哈~  但是,每次写一 ...

前言

  在开发APP的过程中,攻城狮少不了要跟ListView、GridView这些组件眉来眼去,暗送几波秋波。自然原生态美人BaseAdapter更是程序员的最爱,有了它,我们想怎么干就能怎么干,嘿嘿,你懂的O(∩_∩)O哈哈~

  但是,每次写一个BaseAdapter,我们都很自觉的给他写一个ViewHolder,一两个还好,万一应用程序中有数不清的ListView,呵呵~你妹!千篇一律,看得都审美疲劳。作为最伟大的第二十二世纪的程序员们,脱掉、搞上永远是我们最真挚的追求,所以我们要怎么将ViewHolder从BaseAdapter中脱掉呢?绝非不是不用,而是要将其搞成一个华丽丽的工具类实现,收入角落那个寂寞得tools类中。

ViewHolder的实现

  我觉得应该简略的介绍下ViewHolder的实现,谷歌很聪明的在Adapter中运用了复用View的思想,自然让我们的屌丝机也能泡上一些白富美应用多了一点点可能。ViewHolder的具体实现基本体现在BaseAdapter的 getView(int position, View convertView, ViewGroup parent) 这个方法里面,参见下面的代码:

@Overridepublic View getView(int position, View convertView, ViewGroup parent) {  ViewHolder holder;  if (convertView == null) {    convertView = inflater.inflate(R.layout.listview_item_layout, parent, false);    holder = new ViewHolder();    holder.studentName = (TextView) convertView.findViewById(R.id.student_name);    holder.studentAge = (TextView) convertView.findViewById(R.id.student_age);    convertView.setTag(holder);  }  else {    holder = (ViewHolder) convertView.getTag();  }  Student data = (Student) getItem(position);  holder.studentName.setText(data.getName());  holder.studentAge.setText(data.getAge());  return convertView;}class ViewHolder {  public TextView studentName;  public TextView studentAge;}

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:Android应用系列:值得收藏的ViewHolder工具类实现

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录