首页 > 代码库 > ListView 的优化
ListView 的优化
- listView 的宽高设为固定, 或match_parent,这样在加载布局是, 几面装下几个item 就首先加载几个
- 减少对象的创建
//减少对象的创建 if (convertView == null) { //实例化一个布局文件 convertView = LayoutInflater.from(context).inflate(R.layout.my_simple_adapter, null); }
- 使用ViewHolder 提高查找组件的效率
@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder viewHolder; //减少对象的创建 if (convertView == null) { //实例化一个布局文件 convertView = LayoutInflater.from(context).inflate(R.layout.my_simple_adapter, null); viewHolder = new ViewHolder(); viewHolder.img = (ImageView) convertView.findViewById(R.id.img); viewHolder.title = (TextView) convertView.findViewById(R.id.text); convertView.setTag(viewHolder); } else { viewHolder = (ViewHolder) convertView.getTag(); } System.out.println(convertView); viewHolder.title.setText(titles[position]); viewHolder.img.setImageResource(icons[position]); return convertView; } //用于保存第一次查找的组件, 避免下次重复查找 static class ViewHolder { //不封装 效率更高 ImageView img; TextView title; } }
ListView 的优化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。