我在使用 listview 形成的选项卡上显示了巨大的视图。ListView 从扩展 BaseAdapter 的适配器获取其数据。每次来回移动选项卡时,Pager 往往会一次又一次地在 ListView 中创建视图,浪费我宝贵的 CPU。
好的,所以我尝试在 BaseAdapter 的 getView 中使用 parentView.getChild(atIndex) 但这只会破坏滚动 ListView 的视图。
问题,有什么方法可以通过缓存视图来优化性能?
问候,
我在使用 listview 形成的选项卡上显示了巨大的视图。ListView 从扩展 BaseAdapter 的适配器获取其数据。每次来回移动选项卡时,Pager 往往会一次又一次地在 ListView 中创建视图,浪费我宝贵的 CPU。
好的,所以我尝试在 BaseAdapter 的 getView 中使用 parentView.getChild(atIndex) 但这只会破坏滚动 ListView 的视图。
问题,有什么方法可以通过缓存视图来优化性能?
问候,
ListView 已经回收了视图。回收的视图将是适配器 getView 方法中的 View 参数。
您还应该考虑使用 ViewHolder 模式来避免一堆 findViewById 调用。有关更多详细信息,请参阅此链接http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List14.html
编辑:这里有一些我今晚正在查看的用于优化 ListViews 的参考资料:
http://lucasr.org/2012/04/05/performance-tips-for-androids-listview/