展会信息港展会大全

ListView的优化 convertview 减少 getview 方法对 Inflater 的操作
来源:互联网   发布日期:2015-11-26 11:09:47   浏览:3491次  

导读:1. 复用 convertview 减少 getview 方法对 Inflater 的操作2.使用static的view对象的应用减少内存中申请的局部变量的个数(或者使用viewHolder)3.图片数据使用异步加载与缓存机制public class AppListA......

1. 复用 convertview减少 getview 方法对 Inflater 的操作

2.使用static的view对象的应用 减少内存中申请的局部变量的个数(或者使用viewHolder)

3.图片数据使用异步加载与缓存机制

public class AppListAdapter extends BaseAdapter {

private Context context ;

private List<AppInfo> appInfos ;

private static ImageView iv ;

private static TextView tv;

public AppListAdapter(Context context, List<AppInfo> appInfos){

this.context=context;

this.appInfos=appInfos;

}

public void setAppInfos(List<AppInfo> appInfos) {

this.appInfos = appInfos;

}

@Override

public int getCount() {

return appInfos.size();

}

@Override

public Object getItem(int position) {

// TODO Auto-generated method stub

return appInfos.get(position);

}

@Override

public long getItemId(int position) {

return position;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

View view;

if(convertView==null){

view = View.inflate(context, R.layout.app_item, null);

}else{

view = convertView;

}

AppInfo appInfo = appInfos.get(position);

iv = (ImageView)view.findViewById(R.id.iv_app_icon);

iv.setImageDrawable(appInfo.getIcon());

tv = (TextView)view.findViewById(R.id.tv_app_name);

tv.setText(appInfo.getAppName());

return view;

}

}

赞助本站

人工智能实验室

相关热词: 优化

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港