`
endual
  • 浏览: 3578956 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

listview超强优化

 
阅读更多

listview超强优化

0人收藏此文章, 我要收藏 发表于2个月前(2012-08-13 15:46) , 已有220次阅读 共0个评论
listview优化

UI优化:
listview条目与条目之间的间隙的分割内容 : android:divider="@android :color/transparent"
listview条目之间的间隙 : android:paddingTop="5.0dip"
listview点中的颜色变化 : android:listSelector="@color/transparent"
如果listview有很多个条目 ,在listview的右边 会显示出来一个快速滚动的进度条 : 
android:fastScrollEnabled="true"(listview里面的条目至少要滚动5个屏幕以上)
android:scrollbarStyle="outsideOverlay"
android:scrollbars="none"
footer view
header view
快速拖动时候的悬浮提示(window manager)
数据适配性能优化:

a.传统方式:
复用历史缓存的view对象, convertView 减少 采用布局填充器服务 填充布局的次数,达到减少xml->view 操作的次数.
定义了静态的viewholder 储存了 view对象里面控件的引用, view.setTag() view.getTag(); 减少遍历view对象 树状结构的次数.

b.采用了内存缓存,缓存一些经常使用的数据:
服务器上的图片,缓存这些图片,(缓存手机的Rom卡,sd卡)利用softreference把图片给缓存到内存里面;
再比如缓存从数据库中查询出的所有数据,减少查询数据库的动作

c.高级需求:
listview的延时加载:
如果listview里面要显示的有很多的数据, 我们不需要一次把所有的数据都获取出来.
分段的方式 一段一段的把数据下载下来.
注册listview的 onScrollListener(); 发现最后一个可见的条目 为listview里面数据适配器里面的最后的一个条目, 加载更多的内容.

listview的分页显示:
服务器需要提供接口, 一次获取一段的数据.
数据库提供接口 ,一次查询一段的数据.

listview的快速拖动的问题:
当listview在滚动状态下,不去加载listview里面真实的图片和内容,而是把一个缩略图加载界面上.
当listview的滚动状态停止的时候 才去真正的更新里面的条目的内容.
如何让你的ListView实现自动滚动呢? Android其实已经考虑到ListView控件的智能滚动操作。
直接在Layout中写即可,注意下面的stackFromBottom以及transcriptMode这两个属性。涉及代码如下:

Xml代码:
<ListView 
	android:id="listCWJ"  
	android:layout_width="fill_parent"  
	android:layout_height="fill_parent"  
	android:stackFromBottom="true"    
	android:transcriptMode="alwaysScroll"/> 
分享到:
评论

相关推荐

    ListView的优化及分类显示

    1. **使用ViewHolder模式**:这是ListView优化的核心,通过复用convertView来减少 findViewById 的次数,提高性能。ViewHolder类存储了ListView项布局中的各个视图引用,当需要创建新视图时,直接从ViewHolder中获取...

    ListView性能优化之视图缓存

    ListView 视图缓存性能优化 ListView 是 Android 中最常用的控件,通过适配器来进行数据适配然后显示出来,而其性能是个很值得研究的话题。在 Android 开发中,ListView 的性能优化是一个重要的方面,本文将讨论 ...

    android BaseAdapter listView优化

    本篇文章将深入探讨ListView与BaseAdapter的工作原理,并详细介绍如何进行性能优化。 首先,我们来理解一下Adapter在Android中的作用。Adapter是连接数据源和UI组件的桥梁,它负责将数据转化为可显示的视图。在...

    Android ListView性能优化

    ViewHolder模式是ListView优化的核心技巧,它可以避免在滚动时频繁地创建和查找视图对象。通过创建一个ViewHolder类来持有每个列表项视图中的子视图引用,并在getView()方法中重用已存在的ViewHolder,可以显著减少...

    多种Item布局的ListView的优化

    然而,当ListView需要显示多种不同的Item布局时,优化工作变得尤为重要。本教程将深入探讨如何对多种Item布局的ListView进行优化,以提高用户体验和应用性能。 1. **使用ViewHolder模式** ViewHolder模式是优化...

    android listview内存优化

    在Android开发中,ListView是展示大量数据常用的组件,但如果不进行优化,很容易引发内存溢出和界面卡顿问题,特别是当列表中包含大图时。本文将深入探讨如何对ListView进行内存优化,确保10M级别的图片加载时,应用...

    listview高级部分,性能优化的demo

    本示例“ListView高级部分,性能优化的demo”将深入探讨六个关键领域的优化策略,帮助开发者提升ListView的运行效率,提供更好的用户体验。 1. **ViewHolder模式**:这是ListView性能优化的核心。通过复用已创建的...

    ListView性能优化系列之一

    这篇博客“ListView性能优化系列之一”着重探讨了如何通过深入理解源码和利用特定工具来提升ListView的性能。 首先,了解ListView的工作原理是优化的基础。ListView采用的是滚动复用机制,即“视图回收”...

    android之listview优化+分类显示

    1. **ViewHolder模式**:这是ListView优化的核心。通过复用convertView,避免频繁创建新的View对象。ViewHolder模式确保了每个item的视图状态在滚动时能得到快速恢复,降低了内存分配和对象创建的开销。在`getView()...

    ListView优化Demo

    总结,ListView优化主要包括视图复用、适配器优化、ViewHolder模式、数据分页加载等,而`SwipeRefreshLayout`提供了便捷的下拉刷新功能。通过这些策略,我们可以使ListView在处理大数据量时仍保持流畅,提供更好的...

    ListView优化

    ViewHolder设计模式是ListView优化的关键。它的主要思想是减少findViewById()的调用次数,提高视图查找的效率。在getView()方法中,我们通常会通过convertView参数获取到一个已经创建过的视图,如果这个视图可以复用...

    listview 优化

    综上所述,CocosCreator的ListView优化涉及到多方面的策略,包括复用机制、数据绑定、异步加载、绘制优化等。通过使用`GListView.js`这样的扩展库,开发者可以更好地控制ListView的行为,提高应用在处理大量数据时的...

    ListView的优化使用-抽取ViewHolder以及adapter类

    然而,如果没有进行适当的优化,ListView可能会导致性能问题,特别是当数据项数量庞大时。本篇将深入探讨如何通过抽取ViewHolder和优化Adapter来提升ListView的性能。 ViewHolder模式是解决ListView滚动卡顿的关键...

    最经典的listView优化demo

    本教程将通过"最经典的listView优化demo",为初学者提供一份详尽的Android ListView适配器优化实践。 首先,我们要理解ListView的工作原理。ListView采用了一种叫做“视图复用”的机制,即只有当前屏幕可见的几项...

    ListView优化及加载图片时内存溢出

    1. **ListView优化策略** - **ViewHolder模式**:为了解决ListView滚动时频繁创建与销毁视图导致的性能问题,我们可以使用ViewHolder设计模式。这个模式缓存了视图的引用,减少了findViewById()的调用次数,提高了...

    安卓listview相关相关-listview适配器优化重用.rar

    本资料包"安卓listview相关相关-listview适配器优化重用.rar"可能包含了一些关于如何优化ListView适配器以实现重用机制的示例代码。 1. **ListView的工作原理** - ListView通过一个名为Adapter的数据绑定组件来...

    listview优化图片缓存例子

    本示例“listview优化图片缓存例子”将详细介绍如何利用缓存策略来提高ListView加载图片的效率。 一、图片缓存的重要性 在ListView中,由于屏幕空间有限,只有部分列表项可见。当用户滚动时,一些不再可视的列表项...

    ListView的优化+分类显示

    因此,"ListView的优化"是每个Android开发者都需要掌握的关键技能。 首先,我们来了解一下ListView的原理。ListView采用了一种叫做“视图缓存”的机制,即convertView,以减少内存分配和提高滚动性能。当用户滚动时...

    Android ListView多种布局优化demo

    Android ListView多种布局优化demo,使用了两种优化手段,包括convertView,ViewHolder,对应的我的博客地址是: http://blog.csdn.net/u012320459/article/details/47667869

    listview 适配器 优化 重用.zip安卓程序源码资源下载

    总的来说,这份"listview 适配器 优化 重用.zip"源码资源是一个宝贵的Android学习材料,它涵盖了ListView优化的重要实践,对于提高开发者在处理大数据列表时的性能意识和技能有着显著的帮助。无论是初学者还是经验...

Global site tag (gtag.js) - Google Analytics