有几种不同的ID定义方式。有什么不同?

时间:2010-04-01 04:14:13

标签: android android-resources

定义ID有几种不同的方法:

android:id="@id/android:list"
android:id="@+id/android:list"
android:id="@+id/confirm" 

有什么区别?

3 个答案:

答案 0 :(得分:4)

android:id =“@ id / android:list”是指android.R.id.list。 android.R包含与平台捆绑在一起的资源。这些标准资源很多,都是listed in the JavaDoc

@ +创建一个资源,所以android:id =“@ + id / confirm”在你的应用程序的R类中创建一个新的id,即。 R.id.confirm。这在开发指南的User Interface > Declaring Layout > ID中有解释。

我不确定你能不能做android:id =“@ + id / android:list”,因为这意味着你正试图在平台的资源类上创建一个资源。

答案 1 :(得分:1)

+ id / label表示您的资源将具有id值= label,并且该标签属于您的应用程序的名称空间。 有很多资源与android.jar文件捆绑在一起,当你引用这些资源时你会说android:id =“@ android:id / list”这意味着你的资源将有一个id值= list并且这个值属于android名称空间。

有关详细信息,请参阅以下内容: http://groups.google.com/group/android-developers/browse_thread/thread/dc8023b221351aa7

答案 2 :(得分:0)

'+'表示将其添加到当前项目的R.java中。那些没有优势的是从框架继承的资源。