首页 > 代码库 > Android ListView优化 如何省略ViewHolder方法
Android ListView优化 如何省略ViewHolder方法
代码:
public class ViewHolder { /** * @param view converView * @param id 控件的id * @return 返回<T extends View> */ public static <T extends View> T get(View view, int id) { SparseArray<View> viewHolder = (SparseArray<View>) view.getTag(); if (null == viewHolder) { viewHolder = new SparseArray<View>(); view.setTag(viewHolder); } View childView = viewHolder.get(id); if (null == childView) { childView = view.findViewById(id); viewHolder.put(id, childView); } return (T) childView; } }
在Adapter使用:
@Override public View getView(int position, View convertView, ViewGroup parent) { String keyName = getItem(position); if (null == convertView) { convertView = inflate(R.layout.layout_comm_custom_search_item, null); } TextView searchKeyName = (TextView)ViewHolder.get(convertView, R.id.search_key_name); searchKeyName.setText(keyName); return convertView; }
Android ListView优化 如何省略ViewHolder方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。