截至2013年,如果视图完全不透明,Android是否足够聪明,不能绘制底层背景?如果是这样,你怎么告诉它一个视图总是不透明的(在代码中,而不是在XML中)?我有一个ListView
背景不透明,我想让它更顺畅。
@RomainGuy有一篇旧的2009年帖子说它没有,但是他说他计划加入这个功能。他有吗?
答案 0 :(得分:0)
不是100%肯定,但这是我的2c:
Lint仍然抱怨多余的背景。也就是说,如果您有一个完全由ListView填充的FrameLayout并在两者上设置背景颜色,它会抱怨。这告诉我没有任何东西被优化掉。
另外,我没有做过真正的测试,这完全是轶事,但我“感觉”就像我在Fire HD(4.0.3)上从FrameLayout中删除bg颜色时看到了性能提升。
答案 1 :(得分:0)
好的,我终于找到了@RomainGuy的blog。虽然我在那里找不到确切的答案,但它被article覆盖了。他谈到了透支问题,虽然没有明确说出,但暗示几乎没有任何优化进行。
从the article开始,显然消除重叠绘图可以大大提升性能。 SDK中甚至还有一个工具可以检查这种透支的发生程度。