2010-01-13 54 views
43

的加號是什麼?該文件將「@ [+] id/myid」作爲android:id的定義,它表示plus是可選的。但我無法找到加號意味着什麼或不意味着什麼的定義。android:id

這是什麼意思,爲什麼在那裏?

回答

27

@ + ID/FOO意味着你在您的應用程序的名稱空間 中創建一個名爲foo的id。你可以使用@ id/foo來引用它。 @android:id/foo 表示您指的是在android命名空間中定義的ID。 這個命名空間是框架的命名空間。在這種情況下,您需要使用@android:id/list和@android:id/empty,因爲這些是 框架期望找到的id(該框架只知道在android命名空間中的ID爲 。)

取自"Android Developer | Google Groups"討論之一。

20

The documentation說,

的加號(+)表示,這是 那一定是 創建並添加到我們的資源(在 的R.java文件)的新資源名稱。由Android框架提供的其他ID資源 有 。當 引用一個Android資源ID, 你不需要加符號,但 必須添加Android包 命名空間,就像這樣:

android:id="@android:id/empty" 
相關問題