@id和@android之间的区别:id

     

@android:id和@id在这种情况下有什么区别?

在为视图定义自己的Id时,需要使用@+id ,在本例中为section_spinner 。 当你需要在框架中将视图的Id设置为android的预定义Id时,使用@android:id 。 例如,在TabHost中使用ListActivity,TabWidget / FrameLayout等时

字符串开头的at符号(@)表示XML解析器应解析并扩展ID字符串的其余部分,并将其标识为ID资源。 加号(+)表示这是一个新的资源名称,必须创建并添加到我们的资源(在R.java文件中)。 Android框架提供了许多其他ID资源。 引用Android资源ID时,您不需要加号,但必须添加android包命名空间。

@+id/section_spinner表示您正在应用程序的命名空间中创建名为section_spinner的id。 你可以使用@ id / section_spinner来引用它。

@android:id/list表示你指的是android命名空间中定义的列表。

如果符号尚不存在,则“+”表示创建符号。 在引用android:symbols时你不需要它(并且不应该使用它),因为平台已经为你定义了这些,并且无论如何你都无法在该命名空间中创建自己的。

id你自己的id,Android id是android平台中的默认id res / values / ids.xml有一些ID如下所示API 10

 res/values/ids.xml 

这些都是来自android的默认ID

                                                     
 @id 

您在项目中引用自己定义的id

 @android:id 

你指的是android框架定义的id