【问题标题】:Strange R.java issue cause drawable resource isn't load correctly奇怪的 R.java 问题导致可绘制资源未正确加载
【发布时间】:2014-10-18 00:33:06
【问题描述】:

我有一些自定义可绘制对象,但不幸的是,当我尝试在设备上运行应用程序时,未加载可绘制对象。

  • 我已尝试清理工作区...同样的问题。
  • 我已尝试删除并重新导入清理 .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 的设备中...为避免这些设备中的错误,请使用我描述的相同策略。

【问题讨论】:

  • 请发布有问题的可绘制文件之一,并告诉我们您是否保存了资源。
  • 尝试删除 R.java 并选择自动构建。
  • 我也试过删除gen文件...总是自动生成同样的问题。
  • @Sam 问题出现在所有图像上。编译器按字母顺序为第一个 png 分配地址 0x7f020000 并且由于某种奇怪的原因没有加载。

标签: android drawable


【解决方案1】:

这是一个已知问题,我猜它已经在 Honeycomb 中解决了。

http://code.google.com/p/android/issues/detail?id=20283

【讨论】:

  • 感谢您的链接。我有最新的 SDK,我的测试设备有 Gingerbread。
  • 没问题,很高兴它有帮助:)
猜你喜欢
  • 2015-10-09
  • 1970-01-01
  • 1970-01-01
  • 2015-01-28
  • 1970-01-01
  • 1970-01-01
  • 2019-04-29
  • 2020-11-14
  • 1970-01-01
相关资源
最近更新 更多