“@ + android:id / title”是什么意思?

时间:2011-04-26 06:33:53

标签: android

通常情况下,我们应该使用@+id/来定义ID并使用@id来引用ID。今天我在@+android:id/title找到了apps/settings/res/layout/preferenc_progress.xml

如何理解它以及如何使用它?

5 个答案:

答案 0 :(得分:4)

它用于随SDK一起提供的资源。

您可以浏览

来查看它们
  

[PATH TO ANDROID SDK]/platforms/android-[VERSION]/data/res

使用android中的android.R.whatever,您只需指定要查找的R文件即可。有关详细信息,请阅读Accessing Platform Resources

答案 1 :(得分:1)

属于应用程序首选项活动屏幕定义。 标题和摘要是TextView首选项的标准Android字段。

答案 2 :(得分:0)

我从来没有遇到过这种给出id的方式,但理论上这意味着要向title包添加新的android。因此,您可以在代码android.R.id.title中使用它。但我不确定资源编译器是否真的会在android包中创建任何id。我认为它只能用于预定义的ID。但是,当我能够检查它时,我会在稍后给你更准确的答案。

编辑:我查了一下,发现了一些差异。首先,如果您使用已存在于SDK中的@+android:id/some_id定义Android的ID,则不会在您的R.java文件中定义此ID。如果SDK中没有它,它将在R.java中定义,但具有不同类型的值。其次,如果您尝试将id从其字符串表示形式转换为int值,Resources.getIdentifier()方法将在@+android:id格式的情况下返回0。

答案 3 :(得分:0)

我认为它做同样的事情。通过指定命名空间的位置,这只是一种更正式的说法。

答案 4 :(得分:-1)

这意味着它将在您的资源文件中创建一个id。