listview超强优化 UI优化 数据适配性能优化

  次阅读 作者:智能小宝 来源:互联网 2015-11-26 11:06 我要评论(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" />

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...