Android 1.5/1.6版本的样式和自动生成的R.java文件

Android 1.5/1.6版本的样式和自动生成的R.java文件,java,android,Java,Android,我对参考资料中定义的R.java文件和样式有一个奇怪的问题 下面是一些代码: 在res/values/strings.xml中: <style parent="android:Theme.Dialog" name="PopupWindowStyle"> <item name="android:windowBackground">@drawable/bg1</item> <item name="android:textColor">@android:

我对参考资料中定义的R.java文件和样式有一个奇怪的问题

下面是一些代码:

在res/values/strings.xml中:

<style parent="android:Theme.Dialog" name="PopupWindowStyle">
<item name="android:windowBackground">@drawable/bg1</item>
<item name="android:textColor">@android:color/black</item>
</style>
在项目中进行一些更改后,eclipse将
PopupWindowStyle
的自动生成值从0x7f080000更改为0x7f090000。之后,在Android 1.5上,
RegisterScreen
活动显示,没有
PopupUpindowStyle
样式-logcat中显示一个错误:

正在跳过包表0中的条目0x7f090000,因为它并不复杂

然而,在安卓1.6上,一切正常-
PopupWindowStyle
的工作方式与更改其整数值之前的工作方式相同

我正在测试这个问题,将源代码恢复到旧版本。我可以确认,这个问题是在src code commit之后开始出现的,它更改了两个与这部分代码完全无关的文件,以及一个自动生成的R.java文件


知道是什么原因吗

好的。我解决了这个问题,但我仍然不知道为什么在安卓1.5上需要这样

似乎是由另一个文件res/values/colors.xml引起的,该文件只有以下内容:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="threattypelabel">#4f83cc</color>
    <color name="threattypebg">#eeeeee</color>
</resources>

#4f83cc
#Eeeee

将这些颜色标记移回res/values/strings.xml后,它突然工作正常(前后测试了几次)。

我今天也遇到了这个错误。在我的例子中,有两个项目——一个是应用程序,另一个是库。两者都包含字符串。在library项目的代码中,生成的R类文件具有与app项目相同的某些字符串的整数索引

我必须更改应用程序项目的default.properties以将其包括在内 android.library.reference.1=libraryprojectlocation


其中libraryprojectlocation是库项目的相对磁盘位置。

我遇到了相同的问题,我在res/values/array.xml中有一个字符串数组。当我将字符串数组移动到res/values/strings.xml时,应用程序运行良好。但是看看android开发网站
他们明确表示在res/values中有多个xml文件是可以的,事实上他们建议这样做。因此,我尝试了一个实验,我将有问题的xml文件的名称改为arrays.xml,最后注意到额外的“s”,结果成功了。我还重新启动了avd和eclipse。我还使用gui来构建xml文件,而不是键入它。

还不知道主文件(即minSdk和targetSDk标记)中有什么?@Fred:minSdkVersion=“3”-没有targetSDk标记。
public static final class style {
    public static final int PopupWindowStyle=0x7f090000;
}
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="threattypelabel">#4f83cc</color>
    <color name="threattypebg">#eeeeee</color>
</resources>