Android中嵌套布局最耗时的部分是什么?
嵌套布局示例:Android中嵌套布局最耗时的部分是什么?,android,Android,嵌套布局示例: <FrameLayout> <FrameLayout> <FrameLayout> ...(almost 100 for example) <FrameLayout/> <FrameLayout/> <FrameLayout/> <FrameLayout> <FrameLayout/> <FrameLayout/> ...(almost 10
<FrameLayout>
<FrameLayout>
<FrameLayout>
...(almost 100 for example)
<FrameLayout/>
<FrameLayout/>
<FrameLayout/>
<FrameLayout>
<FrameLayout/>
<FrameLayout/>
...(almost 100 for example)
<FrameLayout/>
…(例如将近100人)
平面布局示例:
<FrameLayout>
<FrameLayout>
<FrameLayout>
...(almost 100 for example)
<FrameLayout/>
<FrameLayout/>
<FrameLayout/>
<FrameLayout>
<FrameLayout/>
<FrameLayout/>
...(almost 100 for example)
<FrameLayout/>
…(例如将近100人)
- 问题1:哪一个会更快
- 问题2:对于速度较慢的用户来说,最耗时的部分是什么
至少在理论上,第二种情况应该更好 深度视图层次结构的问题是,
ViewGroup
的onLayout
和onMeasure
通常必须迭代其所有子视图view
s,可能不止一次(例如,如果您检查代码,您可以看到可能会发生多次)。现在,如果每个ViewGroup
至少迭代其所有子对象两次,并且其每个子对象至少迭代其所有子对象两次,依此类推,则视图层次结构中的迭代总量将以指数形式增长
这也是您希望尽可能使用FrameLayout
的原因,因为它的定位机制非常简单,并且不需要多次迭代其所有子视图View
s