可以有相同的@ + id和@string吗?

时间:2012-07-03 13:36:16

标签: android breakpoints

我是Android编程的新手。我花了很长时间试图在我的代码中查找“幻像行断点”错误,直到我更改了字符串资源名称才弄明白。

我有一个包含

的options.xml菜单
<item android:id="@+id/menu_about"
    android:title="@string/menu_about"
    android:icon="@drawable/ic_menu_about"></item>

我的问题 - 我有@+id/menu_about @string/menu_about。这可能吗?

非常感谢

4 个答案:

答案 0 :(得分:2)

,可能,您可以检索R.string.menu_aboutR.id.menu_about.

并且在自动生成的R.java中有不同的类。

答案 1 :(得分:1)

@ + id / menu_about创建id为#34; menu_about&#34; .... @ string / menu_about的item元素,将标题设置为values文件夹中strings.xml文件中存储的内容(即R.string.menu_about)

答案 2 :(得分:1)

是的,这是可能的。

R.java本身被组织成字符串,id,drawable等的一些子类。可能有两个不同的资源,它们的名称相同,因为它们是不同类的成员。但是,您不能拥有两个具有相同名称的相同资源,例如两个名为“foo”的字符串。

答案 3 :(得分:0)

是的,您可以使用相同的名称@+id&amp; @string

这两者都存储在R.java的不同类中。就像你声明@+id/menu_about一样,这将存储在id类中。等。