android中xml文件的解析是在运行时还是编译时进行的?

android中xml文件的解析是在运行时还是编译时进行的?,android,xml,android-layout,Android,Xml,Android Layout,在理解代码编译的细节方面,我远非专家。但我正在学习一些android开发,我注意到布局和其他东西基本上是如何从xml中解析出来的。我想知道这种解析是在编译时还是在运行时进行的?如果是在运行时,解析出一个非常复杂的布局可能会有一些开销 希望这个问题不要太模糊或没有意义。在编译时解析XML以创建布局。您将注意到,如果XML中的任何内容格式不正确,编译器将抛出一个错误 布局的某些方面(如计算相对位置)发生在运行时,但无法避免这种情况。解析发生在运行时和编译时,用于不同的目的。首先,在编译时,通常是对布

在理解代码编译的细节方面,我远非专家。但我正在学习一些android开发,我注意到布局和其他东西基本上是如何从xml中解析出来的。我想知道这种解析是在编译时还是在运行时进行的?如果是在运行时,解析出一个非常复杂的布局可能会有一些开销


希望这个问题不要太模糊或没有意义。

在编译时解析XML以创建布局。您将注意到,如果XML中的任何内容格式不正确,编译器将抛出一个错误


布局的某些方面(如计算相对位置)发生在运行时,但无法避免这种情况。

解析发生在运行时和编译时,用于不同的目的。首先,在编译时,通常是对布局和绘图进行解析,以供布局编辑器呈现,并为代码添加ID引用。样式、主题和属性也会在这一步进行编译,从而实现一些非常强大的XML资源绑定


运行时解析会根据需要动态地对每个资源进行解析。这是通过几个充气器类和其他支持类来实现的。

这是有道理的,(我会在5分钟内接受你的答案),因此在可执行文件中,字节码看起来就像是在java中创建了一堆对象?是的,实际上,您得到的结果与在Java代码中创建布局元素时相同。XML只是提供了一种更具组织性和可读性的创建布局的方法?