有没有人看到或编译过比较声明式 (XML) 与 Android 中以编程方式创建的 UI 的基准?
Google 已经采取了一些措施来加速声明式方法,但您仍然需要在运行时完成布局膨胀步骤。
您是否曾经因任何原因切换(或考虑过)将您的 UI 从声明式更改为程序式?
最佳答案
很少有布局膨胀是在运行时完成的。正如 LayoutInflator API 文档中所暗示的:
For performance reasons, view inflation relies heavily on pre-processing of XML files that is done at build time. Therefore, it is not currently possible to use LayoutInflater with an XmlPullParser over a plain XML file at runtime
如果您查看 source ,许多 View 都是从基于其 XML 标记的 HashMap 中提取的。
在回答您关于我是否对充气机进行基准测试的问题时,我不得不说不。就我个人而言,我发现为您的应用程序在 Android 中对布局充气器进行基准测试的想法等同于为您的网站在 Firefox 中对 DOM 解析器进行基准测试。我不认为这个练习没有意义,但你应该有一个比“我的 Activity 布局对于充气机来说太复杂”更好的理由......
如果您需要动态生成的布局,最好以编程方式创建它。如果您的 View 只是需要很长时间才能膨胀,您应该简化您的 View XML。
关于Android - 声明式与程序式 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2560950/