java - 在 XML 或 java 文件中编写相同的代码(用于布局)之间是否存在性能差异?

标签 java android xml performance

我知道在 XML 和 java 文件中你能做什么和不能做什么是有区别的,但到目前为止,我明白一个 java 文件可以做 XML 文件可以做的所有事情,至少我正在阅读的书中写到了(请参阅下面的引文)。
因此,我的问题是,在用 java 或 xml 编写代码时是否存在性能差异,如果是:两者中的哪一个更受青睐? 这不是关于正确方法的问题,而是关于纯粹性能的问题。
我知道xml代码被编译成java代码,也许这可以比翻译java代码更有效,因为为xml编写编译器比为java文件编写编译器更容易? (基于确实 xml 更容易解析的假设,因为它更连贯并且结构更简单)

从书中引用
这是书中的实际引用,其中指出 java 文件可以完成 xml 文件可以做的所有事情。它首先解释了制作用户界面的两种方法,即声明式和编程式:

The declarative approach involves using XML to declare what the UI will look like, ...

...

A programmatic user interface involves writing Java code to develop the UI.

...

Everything you can do declaratively, you can also do programmatically.

最佳答案

在您的 Activity 类中手动创建 ui 层次结构会更快,但 很多 比使用 xml 布局文件更复杂(关于 LayoutInflater 性能,请参阅它的 createView(String name, String prefix, AttributeSet attrs) 膨胀布局时使用的方法,您会发现它不是速度守护进程),但我无法以 % 为单位提供任何数字

关于java - 在 XML 或 java 文件中编写相同的代码(用于布局)之间是否存在性能差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29532974/

相关文章:

java - 使用 formatDate 时出现 ClassCastException

java - 使用 openFileOutput 的文件路径

json - 使用模型名称将 JSON 绑定(bind)到 View (SAPUI5)

android - 相对布局 - android :layout_centerHorizontal ="true" AND android:gravity ="center_horizontal" showing unexpected results

java - JAXB 解码多态对象 - 集合?

java - 算术错误:/0

java - 避免 "for"语句中的空指针异常

java - 无法解析Android Studio中的Symbol v7和appComapat Activity导入

android - PhoneGap Build 不会使用 PushPlugin 为 Android 构建

json - JSON 中的 XML 序列化,无需过多转义