我在哪里可以找到Android:源代码中的常量值?

我在哪里可以找到Android:源代码中的常量值?,android,attributes,constants,Android,Attributes,Constants,我想知道有一个地方可以定义所有Android:命名常量及其值。 中没有html文档 我的意思是,Android开源代码库中的源代码在哪里,用于Android:orientation和其他属性,例如Android:Gravity。 我想0表示xx,1表示yy,但不是来自网站文档 非常感谢。您不会发现它们在构建时是Java,就像您的项目中的R一样。您可以在android SDK/platforms/android-#/data/res的SDK中看到它们的xml定义 例如,android.R.attr

我想知道有一个地方可以定义所有Android:命名常量及其值。 中没有html文档

我的意思是,Android开源代码库中的源代码在哪里,用于Android:orientation和其他属性,例如Android:Gravity。 我想0表示xx,1表示yy,但不是来自网站文档


非常感谢。

您不会发现它们在构建时是Java,就像您的项目中的R一样。您可以在android SDK/platforms/android-#/data/res的SDK中看到它们的xml定义

例如,android.R.attr.orientation可以在android sdk/platforms/android-#/res/values/attrs.xml中找到,其定义如下所示

<!-- Standard orientation constant. -->
<attr name="orientation">
    <!-- Defines an horizontal widget. -->
    <enum name="horizontal" value="0" />
    <!-- Defines a vertical widget. -->
    <enum name="vertical" value="1" />
</attr>

Andy McSherry所说的并不完全正确,因为通常XML常量仍然需要在代码中匹配(无论是Java还是本机),以便执行逻辑

也就是说,没有一个文件包含所有常量的定义。相反,常量通常是相对于使用它们的位置定义的。例如,
android:orientation
值可以在
LinearLayout
as(值
0
)和(值
1
)中找到

android:gravity
的可能值实际上是在一个单独的类中定义的,这从封装的角度来看是有意义的,特别是因为gravity由不同的实现(例如
ViewGroup
实现)使用


一般来说,根据经验,如果常量只与单个类相关,您会发现它们在同一个类中声明。否则,它们很可能被分解成一个单独的文件或一个超类。

谢谢大家。这对我帮助很大。