我有一些自定义可绘制对象,但不幸的是,当我尝试在设备上运行该应用程序时,未加载可绘制对象。
- 我试图清理工作区......同样的问题。
- 我试图删除并重新导入清理 .metadata 文件夹的项目......同样的问题。
- 我试图删除 autogen 文件 R.java... 什么都没有。
- 我试图改变使用的图像......什么都没有。
- 我已经更改了名称...操作,这次有问题的可绘制开始工作,但同样的问题发生在另一个图像上。
通过各种测试,我注意到未加载的图像始终是第一个
public static final class drawable {...}
在自动生成的文件中R.java
详细来说,地址为0x7f020000的资源图片:
public static final int bt_a_1=0x7f020000;
这些地址是按字母顺序分配的
,所以我已经解决了简单地添加另一个a1.png
在项目中未使用的名为的图像。
使用这种解决方法一切正常,但我不知道这个荒谬问题的原因是什么。
编辑
这是自 HoneyComb 版本更改 Ia971bb242ceac5e8f9346094009a10f356399ab9 以来已修复的 Android 问题
该问题是由于低级资源缓存冲突错误而发生的。
更多信息: https ://android-review.googlesource.com/#/c/15815/
此问题可能发生在所有操作系统早于 HoneyComb 的设备中......为了避免这些设备中的错误,请使用我描述的相同策略。