用户工具

站点工具


开发:android:viewholder

ViewHolder介绍

由于getViewById()性能在列表中较为低下,所以使用ViewHolder将已存在的View给缓存下来,提高convertView重复使用的时候的效率。

class ViewHolder{
     ImageView img;
     TextView price;
 }
public View getView(int position, View convertView, ViewGroup parent) {
     ViewHolder holder = new ViewHolder();
     if(convertView==null){
         convertView = inflater.inflate(R.layout.good_list_item, null, false);
         holder.img = (ImageView) convertView.findViewById(R.id.img);
         holder.price = (TextView) convertView.findViewById(R.id.price);
         convertView.setTag(holder);  
     }else{
         holder = (ViewHolder) convertView.getTag();
     }
     //设置holder
     holder.img.setImageResource(R.drawable.ic_launcher);
     holder.price.setText("$"+list.get(position).price);
 
     return convertView;
 }

相关链接

开发/android/viewholder.txt · 最后更改: 2015-01-30 17:40 由 danding

粤ICP备16007019号-3