文档章节

Android中Listview展示及其优化好处

Jusenr
 Jusenr
发布于 2016/05/17 00:23
字数 210
阅读 22
收藏 0

 

展示效果:

 

中间的item条目是可以上下滑动的。

 

代码实现:

 1     @Override
 2         public View getView(int position, View convertView, ViewGroup parent) {
 3 
 4             ViewHolder holder;
 5             if (convertView == null) {
 6                 convertView = View.inflate(CleanCacheActivity.this,
 7                         R.layout.list_item_cacheinfo, null);
 8                 holder = new ViewHolder();
 9 
10                 holder.tvName = (TextView) convertView
11                         .findViewById(R.id.tv_name);
12                 holder.tvCache = (TextView) convertView
13                         .findViewById(R.id.tv_cache);
14                 holder.ivIcon = (ImageView) convertView
15                         .findViewById(R.id.iv_icon);
16                 holder.ivClean = (ImageView) convertView
17                         .findViewById(R.id.iv_clean);
18 
19                 convertView.setTag(holder);
20             } else {
21                 holder = (ViewHolder) convertView.getTag();
22             }
23             final CacheInfo info = getItem(position);
24             holder.tvName.setText(info.name);
25             holder.ivIcon.setImageDrawable(info.icon);
26        //......
27         return convertView;
28     }

 

 1     // listview 属性封装
 2     class ViewHolder {
 3         public TextView tvName;
 4         public TextView tvCache;
 5         public ImageView ivIcon;
 6         public ImageView ivClean;
 7     }
 8 
 9     // 缓存信息封装
10     class CacheInfo {
11         public String name;
12         public String packageName;
13         public Drawable icon;
14         public long cacheSize;
15     }

 

 

 

优化特点:

1.

  减少findViewById的次数

2.

  减少创建对象的次数(holder = new ViewHolder();)

3.

  实现分页加载,节省消耗。

 

© 著作权归作者所有

共有 人打赏支持
Jusenr
粉丝 0
博文 20
码字总数 10876
作品 0
西安
Android工程师
私信 提问
Android开发优化之——对界面UI的优化(1)

在Android应用开发过程中,屏幕上控件的布局代码和程序的逻辑代码通常是分开的。界面的布局代码是放在一个独立的xml文件中的,这个文件里面是树型组织的,控制着页面的布局。通常,在这个页面...

KingMing
2015/04/03
0
0
android 开发之 ListView 与Adapter 应用实践

在开发android中,ListView 的应用显得非常频繁,只要需要显示列表展示的应用,可以说是必不可少,下面是记录开发中应用到ListView与Adapter 使用的实例: ListView 所在页面中的布局(listv...

zty_Love
11/02
0
0
android ListView显示数据问题

我有个列表展示数据的功能,一开始时直接用ListView来展示的,可以正常展示数据。 后来,我重写了一个类InnerListView,继承了ListView ,然后再进行列表展示,发现数据不能显示了,请问为什...

天王盖地虎626
2014/09/14
347
1
Android开发优化之——对界面UI的优化(2)

在一个应用程序中,一般都会存在多个Activity,每个Activity对应着一个UI布局文件。一般来说,为了保持不同窗口之间的风格统一,在这些UI布局文件中,几乎肯定会用到很多相同的布局。如果我们...

KingMing
2015/04/03
0
0
Android开发优化之——从代码角度进行优化

通常我们写程序,都是在项目计划的压力下完成的,此时完成的代码可以完成具体业务逻辑,但是性能不一定是最优化的。一般来说,优秀的程序员在写完代码之后都会不断的对代码进行重构。重构的好...

KingMing
2015/04/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

windows10小鹤双拼注册表

《安全第一》直接发文本内容,自己建文本,改文本后缀reg。 使用方法: 1.复制下示文本内容,打开你的文本编辑器(#记事本notepad或其他++),粘贴文本内容并保存在任意位置(不影响使用) ...

漫步海边小路
1分钟前
0
0
一、数据挖掘

数据挖掘的发展动力---需要是发明之母 数据爆炸问题 自动数据收集工具和成熟的数据库技术使得大量的数据被收集,存储在数据库、数据仓库或其他信息库中以待分析。我们拥有丰富的数据,但却缺...

凯文加内特
4分钟前
0
0
Java线程池ThreadPoolExecutor

线程池 ThreadPoolExecutor 线程池是ExecutorService的实现,可以通过Executors执行工厂构造不同类型的执行服务(线程池)。 ThreadPoolExecutor线程池使用的是阻塞队列BlockingQueue。 用于...

器石_
5分钟前
0
0
Mybatis 实现SQL拦截并在控制台打印SQL和参数

注:可以拦截sql 执行时间,优化sql。并打印sql 以及参数 第一步:创建类: SqlPrintInterceptor 并实现 Interceptor 该类如下: package com.ra.common.plugin;import org.apache.ibati...

轻量级赤影
8分钟前
1
0
Log4j2 配置

config: <?xml version="1.0" encoding="UTF-8"?><!-- http://logging.apache.org/log4j/2.x/manual/appenders.html --><!-- status 负责打印日记系统的 WARN 级别以及以上的日记 --><C......

Credo-Zhao
8分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部