我想知道@+id/android:list和之间有什么区别@+id/list。我知道最后一个是常规的ID分配,但第一个看起来不同。有什么特别之处?
@+id/android:list
@+id/list
我在哪里看到的: 我正在研究ListView,ListAdapter之类的东西,作者在布局xml文件中定义了ListView,如下所示:
<?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" > <ListView android:id="@+id/android:list" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <TextView android:id="@+id/android:empty" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/main_no_items"/> </LinearLayout>
我也要提一下@+id/android:emptyid
@+id/android:empty
他还扩大了ListActivity课堂。
ListActivity
这是文章的出处。
还有我在想什么问题:
Activity
谢谢。
Android中的资源ID是特定于某个程序包的(这很好,否则,如果您的应用程序同时处理多个程序包,则可能会有很多冲突)。
@+id/list会在您的应用(=您的程序包)中创建一个名为“列表”的资源ID,并为其指定一个唯一ID。在代码中,应为R.id.list。
R.id.list
@android:id/list将使用android包中的ID“列表”(在代码中为)android.R.id.list。
@android:id/list
android.R.id.list
编辑:需要添加更正David Hedlund指出:正确的参考将是@android:id/list。另外,这+表示您正在定义新的ID- 在引用Android API中定义的内容时,显然不需要此ID。
+