android 一般都用viewholder来优化contentView,采用sparseArray能够进一步优化
/** * 用法: ImageView bananaView = ViewHolder.get(convertView, R.id.banana); * * @param convertView * @param id * @return */ @SuppressWarnings("unchecked") public static <T extends View> T getView(View convertView, int id) { SparseArray<View> viewHolder = (SparseArray<View>) convertView.getTag(); if (viewHolder == null) { viewHolder = new SparseArray<View>(); convertView.setTag(viewHolder); } View childView = viewHolder.get(id); if (childView == null) { childView = convertView.findViewById(id); viewHolder.put(id, childView); } return (T) childView; }