android:id是什么加号

Bod*_*ger 46 android

文档说"@ [+] id/myid"作为android:id的定义,从符号表示加号是可选的.但是我无处可以找到加号意味着什么或不提供意义的定义.

它是什么意思,为什么会这样?

Ant*_*ney 29

@ + id/foo表示您在应用程序的命名空间中创建名为foo的id.你可以使用@ id/foo来引用它.@android:id/foo表示你指的是android命名空间中定义的id.此命名空间是框架的命名空间.在这种情况下,你需要使用@android:id/list和@android:id/empty,因为这些是框架期望找到的id(框架只知道android命名空间中的id.)

摘自"Android开发者| Google网上论坛"讨论之一.


duc*_*rth 21

文件说,

加号(+)表示这是一个新的资源名称,必须创建并添加到我们的资源中(在R.java文件中).Android框架提供了许多其他ID资源.引用Android资源ID时,您不需要加号,但必须添加android包命名空间,如下所示:

android:id="@android:id/empty"
Run Code Online (Sandbox Code Playgroud)