在主Activity中:
listview=(ListView)findViewById(R.id.listview);getData();
//为list添加数据overrideSimpleAdapter=new OverrideSimpleAdapter(getContext(),list,R.layout.list_item_layout,
new String[]{"num","word","translates"},
new int[]{R.id.tv_num,R.id.tv_word,R.id.tv_translates});
listview.setAdapter(overrideSimpleAdapter);
重写SimpleAdapter:/**
* Created by KewenC on 2017/1/26.
*/
public class OverrideSimpleAdapter extends SimpleAdapter {
/**
* Constructor
*
* @param context The context where the View associated with this SimpleAdapter is running
* @param data A List of Maps. Each entry in the List corresponds to one row in the list. The
* Maps contain the data for each row, and should include all the entries specified in
* "from"
* @param resource Resource identifier of a view layout that defines the views for this list
* item. The layout file should include at least those named views defined in "to"
* @param from A list of column names that will be added to the Map associated with each
* item.
* @param to The views that should display column in the "from" parameter. These should all be
* TextViews. The first N views in this list are given the values of the first N columns
*/
private LayoutInflater mInflater;
private ArrayList<Map<String, Object>> list;
private int mResource;
private int[] mTo;
private String[] mFrom;
public OverrideSimpleAdapter(Context context, ArrayList<Map<String, Object>> data, int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
this.list=data;
this.mInflater = LayoutInflater.from(context);
this.mResource = resource;
this.mFrom = from;
this.mTo = to;
}
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
// 判断是否缓存
if (convertView == null) {
holder = new ViewHolder();
// 通过LayoutInflater实例化布局
convertView = mInflater.inflate(mResource, null);
// holder.img = (ImageView) convertView.findViewById(R.id.imageView);
holder.num = (TextView) convertView.findViewById(mTo[0]);
holder.word = (TextView) convertView.findViewById(mTo[1]);
holder.translates = (TextView) convertView.findViewById(mTo[2]);
convertView.setTag(holder);
} else {
// 通过tag找到缓存的布局
holder = (ViewHolder) convertView.getTag();
}
// 设置布局中控件要显示的视图
// holder.img.setBackgroundResource(R.drawable.ic_launcher);
holder.num.setText(list.get(position).get(mFrom[0]).toString());// mFrom[0]为“num”Key
holder.word.setText(list.get(position).get(mFrom[1]).toString());
holder.translates.setText(list.get(position).get(mFrom[2]).toString());
return convertView;
}
public final class ViewHolder {
// public ImageView img;
public TextView num;
public TextView word;
public TextView translates;
}
}
以上这篇优化SimpleAdapter适配器加载效率的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# simpleadapter适配器
# Android 适配器模式应用及设计原理
# 给大家
# 希望能
# 重写
# 这篇
# 小编
# 大家多多
# 判断是否
# 加载
# extends
# public
# param
# Constructor
# SimpleAdapter
# tv_word
# setAdapter
# tv_translates
# KewenC
# Created
# context
# entries
相关文章:
网页设计与网站制作内容,怎样注册网站?
西安专业网站制作公司有哪些,陕西省建行官方网站?
如何通过多用户协作模板快速搭建高效企业网站?
临沂网站制作公司有哪些,临沂第四中学官网?
,石家庄四十八中学官网?
深入理解Android中的xmlns:tools属性
如何用狗爹虚拟主机快速搭建网站?
电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?
深圳网站制作的公司有哪些,dido官方网站?
如何快速建站并高效导出源代码?
宝塔建站助手安装配置与建站模板使用全流程解析
黑客入侵网站服务器的常见手法有哪些?
如何快速查询网址的建站时间与历史轨迹?
定制建站策划方案_专业建站与网站建设方案一站式指南
C#如何序列化对象为XML XmlSerializer用法
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
建站之星导航如何优化提升用户体验?
太原网站制作公司有哪些,网约车营运证查询官网?
开心动漫网站制作软件下载,十分开心动画为何停播?
网站制作壁纸教程视频,电脑壁纸网站?
如何快速搭建高效简练网站?
建站之星如何开启自定义404页面避免用户流失?
上海网站制作网站建设公司,建筑电工证网上查询系统入口?
代刷网站制作软件,别人代刷火车票靠谱吗?
如何高效配置IIS服务器搭建网站?
太平洋网站制作公司,网络用语太平洋是什么意思?
如何快速搭建虚拟主机网站?新手必看指南
企业微网站怎么做,公司网站和公众号有什么区别?
购物网站制作公司有哪些,哪个购物网站比较好?
建站之星代理费用多少?最新价格详情介绍
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
Python文件管理规范_工程实践说明【指导】
济南专业网站制作公司,济南信息工程学校怎么样?
如何选购建站域名与空间?自助平台全解析
打鱼网站制作软件,波克捕鱼官方号怎么注册?
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何用西部建站助手快速创建专业网站?
网站插件制作软件免费下载,网页视频怎么下到本地插件?
如何通过免费商城建站系统源码自定义网站主题与功能?
网站制作话术技巧,网站推广做的好怎么话术?
如何通过虚拟主机快速完成网站搭建?
建站之星安装步骤有哪些常见问题?
如何通过虚拟机搭建网站?详细步骤解析
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
微信小程序 五星评分(包括半颗星评分)实例代码
在线教育网站制作平台,山西立德教育官网?
如何快速生成可下载的建站源码工具?
网站制作的方法有哪些,如何将自己制作的网站发布到网上?
nginx修改上传文件大小限制的方法
*请认真填写需求信息,我们会在24小时内与您取得联系。