您的位置:首页 > 其它

基础篇(十二) AdapterView和Adapter(适配器)

2015-11-28 21:00 253 查看
一、AdapterView和Adapter的关系

AdapterView是在程序运行时动态生成的视图。

Adapter完成视图组件与数据的合成,并将合成的视图组件返回给AdapterView。

1、AdapterView:



2、Adapter:



二、Adapter优化

1、利用Item组件重用机制,重复利用缓存的Item组件,避免频繁创建新Item组件对象。(缓存的Item利用convertView参数传入getView方法)



2.使用ViewHolder缓存Item组件包含的子组件,避免频繁解析xml文件,频繁创建Item里的子组件对象。

static class ViewHolder {
TextView text;
ImageView image;
}


public View getView(int pos, View convertView, ViewGroup parent){
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.list_item, null);
holder = new ViewHolder();
holder.text = (TextView) convertView.findViewById(R.id.text));
holder.image = (ImageView) convertView.findViewButId(R.id.image));
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.text.setText(TEXT[pos]);
holder.image.setImageBitmap((IMAGE[pos] );
return convertView;
}


3.优化convertView的布局,使用扁平化的布局代替嵌套层级太多的布局
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: