定义ID有几种不同的方法:
android:id="@id/android:list"
android:id="@+id/android:list"
android:id="@+id/confirm"
有什么区别?
答案 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中。那些没有优势的是从框架继承的资源。