【问题标题】:Performance with custom Gallery without pictures没有图片的自定义图库的性能
【发布时间】:2012-07-25 07:01:03
【问题描述】:

我已经使用自定义视图而不是图片实现了我的自定义 Gallery

参考是http://www.programmingmobile.com/2011/08/android-tutorial-gallery-view-without.html

但是现在我有大约 8 个自定义视图,其中包含带有大量文本的复杂布局。

问题是性能很差,我缓存了视图但是滚动不流畅。使用较新的设备和平板电脑没问题,但是否有一些提示如何为旧设备增加性能?我考虑过制作视图位图,但它们有很多按下/未按下的可绘制对象 + 文本内容变化非常频繁。

只是我的适配器getView是这样的,几乎所有时间它都返回缓存视图,但是滚动不流畅,我可能会渲染视图问题吗?

@Override
    public View getView(final int position, View convertView, ViewGroup parent) {

        View cachedView = cachedViews.get(position);
        if (cachedView  != null) {
            return cachedView;
        }
    // Else inflate view etc.
    }

【问题讨论】:

  • 你能发布一些代码吗?我建议使用 convertView 和 ViewHolder。它极大地提高了性能。
  • 您不应该尝试自己缓存Views,因为ListView 会自动回收列表项的Views。如果你想提高性能,你应该尝试在你的适配器中实现ViewHolder 模型。
  • 是的,但这是Gallery,有一个已知错误,它无法回收视图,convertView 对我来说总是为空。

标签: android performance android-layout custom-component


【解决方案1】:

很可能所有布局的实现都过于复杂,无法在没有硬件加速的旧设备上运行,而且 Gallery 应该与图像一起使用,所以这里没有什么可做的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多