【问题标题】:Does Android optimise for opaque viewsAndroid 是否针对不透明视图进行了优化
【发布时间】:2023-04-10 19:25:01
【问题描述】:

截至 2013 年,如果视图完全不透明,Android 是否足够智能以不绘制底层背景?如果是这样,您如何告诉它视图将始终是不透明的(在代码中,而不是在 XML 中)?我有一个ListView,它的背景是不透明的,我想让它更平滑。

@RomainGuy 有一个 2009 年的旧帖子说它没有,但他说他计划添加该功能。是吗?

【问题讨论】:

    标签: android optimization


    【解决方案1】:

    不是 100% 确定,但这是我的 2c:

    Lint 仍然抱怨背景冗余。也就是说,如果您有一个完全由 ListView 填充的 FrameLayout 并在两者上设置背景颜色,它会抱怨。这向我表明,没有任何东西被优化掉。

    另外,我没有进行任何真正的测试,这完全是轶事,但我“感觉”当从 Fire HD (4.0.3) 上的 FrameLayout 中删除 bg 颜色时,我看到了性能改进。

    【讨论】:

    • Kindle Fire HD 使用 Android 的修改版本。它的行为方式可能不同
    【解决方案2】:

    好的,我终于找到了@RomainGuyblog。虽然我在那里找不到确切的答案,但它已包含在一个 article 中。他谈到了过度绘制,虽然没有明确说明,但暗示几乎没有优化。

    the article 看来,消除重叠绘图似乎可以极大地提升性能。 SDK 中甚至还有一个工具可以检查发生了多少此类过度绘制。

    【讨论】:

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