昨晚我的代码工作正常,今天当我加载它时,我在代码中访问的原始资源正试图从指向字符串的 id 读取,而不是原始文件夹中的 xml 文件。
我已经使用http://www.statman.info/conversions/hexadecimal.html来跟踪资源 id 并将它们与它们的 R hex id 匹配,我可以看到它应该访问 0x7f040002 但由于某种原因正在访问 7f060000 .. .
我已经看过了: Accessing wrong raw resource in Android
我已经完成了以下所有操作:
- 清洁、重建、运行。
- 删除 R,重启 Eclipse,清理,重建,运行
- 删除 R,立即清理并重建,重新启动
- UmbySlipKnot 删除 Gen Folder + 以上所有内容的想法。
- 确保 Android.R 没有在任何地方使用。
- 通过调用打印了我期望使用的实际资源 id(正确返回预期的 id!):
int resId=con.getResources().getIdentifier("raw_tsn_xml_amina_simple","raw",con.getPackageName());
还完全从头开始重建项目。无论我做什么 - 它总是将应用程序名称作为它为输入流引用的资源 id - 源
这些都不适合我......有没有人知道我还能尝试什么?
我还添加了图像来向您展示我注意到的内容:
调试片段:
Android R 文件片段: