我在一个
<merge>
中有很多View
,我将其包括在一个RelativeLayout
中。 我试图引用这些已经包含的View
的ID来作为其他View
的锚点,但Eclipse报错说无法解析这些ID。 我找到了一种解决方法,即在第一次引用它们时使用@+id
而不是在实际定义它们所引用的对象时才使用@id
。我已经在Style
和所声明的包含的<merge>
中定义了这两个ID
,因此如果我继续重复定义ID,感觉有点效率低下。
这样做是否正确? 我假设这样做是不好的,因为'+'符号会再次初始化。我的当前假设是,当您首次使用该ID时应使用@+id
,而不是在初始化表示ID的对象之前使用@id
,就像C/C++
一样,它们要求在使用函数的代码之前至少有一个函数原型。
我还有另一个问题:当您使用基于GUI的Eclipse UI构建器时,我注意到他们总是使用@+id
而不是@id
。这是否可行? 对我来说,这似乎效率低下;好像应用程序将花费更多的时间来确定ID是否已在R.id
中声明。
id
的xml文件,在那里初始化我需要的所有ID,然后再也不必使用@+id
了吗? - cesarmerge
和include
标签时,有时会在eclipse中遇到错误。不确定是adb
的问题还是android资源xml解析器的问题。这让我想知道何时应该使用+。 - cesar