两种重用convertView的方法孰优孰劣?
2012-11-19 15:26
330 查看
android中使用ListView时在getview方法中需要重用convertView,用来提高系统性能。目前有两种方式:
这两种方式都能达到重用convertView的目的, 唯一的区别是第一种多了一层对view的引用。
有人在做图片浏览器的时候,发现第一种的性能会比第二种稍微好一点,具体什么原因,我死活都想不明白。哪位大侠可以指点迷津?
@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; View view; if(convertView == null) { holder = new ViewHolder(); view = inflater.inflate(R.layout.list_item, null); holder.name = (TextView) view.findViewById(R.id.textView1); view.setTag(holder); }else { view = convertView ; } holder = (ViewHolder) view.getTag(); holder.name.setText(list.get(position)); return view; }
@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if(convertView == null) { holder = new ViewHolder(); convertView = inflater.inflate(R.layout.list_item, null); holder.name = (TextView) convertView.findViewById(R.id.textView1); convertView.setTag(holder); } holder = (ViewHolder) convertView.getTag(); holder.name.setText(list.get(position)); return convertView; }
这两种方式都能达到重用convertView的目的, 唯一的区别是第一种多了一层对view的引用。
有人在做图片浏览器的时候,发现第一种的性能会比第二种稍微好一点,具体什么原因,我死活都想不明白。哪位大侠可以指点迷津?
相关文章推荐
- UITableView的两种重用Cell方法的区别
- iOS-UITableView的两种重用Cell方法的区别(dequeueReusableCellWithIdentifier)
- iOS-UITableView的两种重用Cell方法的区别(dequeueReusableCellWithIdentifier)
- iOS UItableview的两种重用cell的方法的区别
- UITableView最上面tableHeaderView留空间的两种方法
- 解决UITableView中Cell重用机制导致内容出错的方法总结
- ios tableView那些事 (十六) UITableView中Cell重用机制导致内容重复解决方法
- 通过Android View的两种事件响应方法比较inheritance和composition
- android Layout布局转换成View对象的两种方法,如图所示
- 练习PopupWindow弹出框之实现界面加载的时候显示弹出框到指定的view下面--两种延迟方法
- convertView&setTag方法的一点理解
- 根据Key定位ViewObject中的一行的两种方法
- MVC从Controller到view进行传值的两种方法
- ios: webview 中 加载状态显示两种方法
- 两种方法处理recycleview的点击事件
- Linq和DefaultView两种方法去飙DataTable里的重复行
- 安卓Recyclerview 两种type的解决方法
- convertView重用和异步加载图片造成错乱问题解决
- javafx tableview 绑定字段的两种方法
- iOS中UIAlertView3秒后消失的两种实现方法