2012-05-01 22 views
0

我显示与列表视图形成标签巨大看法备份定制实施BaseAdapter。 ListView从扩展BaseAdapter的Adapter中获取数据。每次,我都来回移动标签,传呼机往往会在ListView中一次又一次地创建视图,浪费我珍贵的CPU。优化的ListView通过缓存查看产生

OK,所以我尝试使用BaseAdapter的getView parentView.getChild(atIndex),但只是废墟上滚动的ListView的看法。

问题,任何方式通过优化缓存视图的表现?

问候,

回答

2

ListView控件已经回收了意见。回收的视图将是适配器getView方法中的View参数。

你也应该考虑使用ViewHolder模式,避免了一堆findViewById调用。请参阅此链接了解更多详情http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List14.html

编辑:这里的一些引用我一直在寻找今晚优化列表视图:

http://lucasr.org/2012/04/05/performance-tips-for-androids-listview/

http://www.youtube.com/watch?v=wDBM6wVEO70

+0

老兄,你真棒。 Good_Karma_for_cory ++ –

+0

啊哈,答案是不是我想的那样。我的错,我误解了你的评论。但是,你是正确的,使用ViewHolder模式帮助了一堆,但如缺少值的下一个视图,它使用从以前的观点垃圾数据。还是非常感谢。它绝对有助于提高性能。 –

+0

您是否查看了该链接中的getView()方法,并查看它们如何重用循环视图并使用set/getTag方法将引用保存到每行需要更新的子视图?除非我误解了你的问题,否则这似乎可以解决你的问题。我只是在今晚观看了ListViews上的一个Google I/O视频,他们特别说你不应该试图缓存视图,因为ListViews已经高度优化了效率。让我看看我能不能找到视频。 –