Android R.java资源引用类型

由 luckybird 创建,youj 最后一次修改 2017-01-09

无论资源的类型如何,所有Android资源都通过其在Java源代码中的ID来标识。

XML文件中ID的语法称为资源引用语法。

语法

此资源引用具有以下形式结构:

@[package:]type/name

该类型对应R.java中可用的资源类型命名空间之一。

R.java和资源类型之间的映射

下面的R 静态字段

  • R.drawable
  • R.id
  • R.layout
  • R.string
  • R.attr
  • R.plural
  • R.array

在XML资源引用语法中对应以下类型。

  • drawable
  • id
  • layout
  • string
  • attr
  • plurals
  • string-array

资源引用名称和包

资源引用中的名称部分 @[package:] type/name 是给予资源的名称。

例子

例如,在以下布局文件中的text1,它也在R.java中表示为int常量。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
    android:id="@+id/text1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
 <Button
    android:id="@+id/b1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
   />
</LinearLayout>

注意

如果不在语法 @[package:]type/name中指定任何包,则根据本地资源和应用程序的本地R.java包对type/name解析。

如果你指定 android:type/name ,引用就用包 android解析,具体是通过 android.R.java 文件。

你可以使用任何Java包名称代替包占位符来定位正确的 R.java 文件以解析引用。

您可能还喜欢:

W3Cschool学编程上微课-边学边练
二维码
建议反馈
二维码