我的资源中定义的 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>
在 AndroidManifest.xml 中:
<activity
android:name=".RegisterScreen"
android:icon="@drawable/ico"
android:label="@string/applicationName"
android:theme="@style/PopupWindowStyle"
android:configChanges="locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|fontScale">
</activity>
在自动生成的 gen/.../R.java 中:
public static final class style {
public static final int PopupWindowStyle=0x7f090000;
}
在项目中进行一些更改后,eclipse 将 PopupWindowStyle
的自动生成值从 0x7f080000 更改为 0x7f090000。之后,在 Android 1.5 上,RegisterScreen
Activity 显示时没有 PopupWindowStyle
样式 - logcat 中显示错误:
跳过包表 0 中的条目 0x7f090000,因为它不复杂!
但在 Android 1.6 上一切正常 - PopupWindowStyle
的工作方式与它的整数值更改之前一样。
我正在通过将源代码恢复为旧版本来测试这个问题。我可以确认,这个问题是在 src 代码提交之后开始出现的,它更改了两个与这部分代码完全无关的文件 - 以及一个自动生成的 R.java 文件。
知道是什么原因造成的吗?
最佳答案
我今天也遇到了这个错误。就我而言,有 2 个项目 - 一个是应用程序,另一个是库。两者都包含字符串。在library工程的代码中,生成的R类文件与app工程的部分字符串的整数索引相同。
我必须更改应用程序项目的 default.properties 以使其包含在内 android.library.reference.1=libraryprojectlocation
其中 libraryprojectlocation 是库项目的相对磁盘位置。
关于java - Android 1.5/1.6 问题与样式和自动生成的 R.java 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2684103/