Android:嵌套FrameLayouts - 确切的性能开销是什么?

时间:2016-05-10 15:37:38

标签: android performance listview android-framelayout

为了实现具有独立且可重用的UI组件的干净架构,我需要具有嵌套FrameLayouts(最多3-4个嵌套FrameLayouts)的层次结构,所有这些都具有{{{ 1}}和layout_width设置为layout_height(该架构背后的一般概念在this answer中有所描述。)

我开始怀疑这种嵌套match_parent的做法是否存在明显的性能开销。为了使问题不那么抽象,让我们在两个具体层次结构的背景下讨论它:"静态"层次结构(屏幕上没有任何移动),"可滚动"层次结构(用户可以滚动屏幕)。

"静态"层次结构:

enter image description here

显示包含此层次结构的屏幕后,不再有任何更改。

"可滚动"层次结构:

enter image description here

在屏幕上显示此层次结构后,用户可以滚动内部FrameLayouts,因此需要重新绘制最里面的ListView

我根本不担心"静电"层次结构 - 在这种情况下,嵌套RelativeLayouts的开销是一次性支付,不会以任何明显的方式影响布局的性能。

  • Q1:这个假设是正确的,还是有一些性能下降的情况我可以碰到?

怎么样"可滚动"布局?我想知道内部FrameLayouts是否被多个ListView包裹的事实是否会影响其滚动性能......

  • Q2:外部FrameLayouts是否影响嵌套FrameLayouts滚动效果?
  • 问题3:如果回答Q2是"是","可滚动"的确切开销是多少?情况?

0 个答案:

没有答案