我有一个XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<locations>
<location index="0" asset="@drawable/test1"></location>
</locations>
当我解析XML并尝试检索ResourceID时,它不会返回
int ResourceID = xmlParser.getAttributeIntValue(null, "asset", 0);
正在成功检索XML中的所有其他值...我做错了什么?
编辑:我想通了,我不想只是抓住一个Int而不是
int ResourceID = xmlParser.getAttributeIntValue(null, "asset", 0);
它的
int ResourceID = xmlParser.getAttributeResourceValue(null, "asset", 0);
答案 0 :(得分:2)
您实际上不需要使用XML文件来获取drawable的资源ID。在编译时,编写'R.java'文件,其中包含资源ID和实际资源之间的映射。要获取资源ID,只需使用:
int test1ResId = R.drawable.test1;
答案 1 :(得分:1)
如果您将字符串设置为'test1'。获取资源ID的正确方法是
getIdentifier (String name, String defType, String defPackage);
例如
getResources().getIdentifier("test1","drawable","com.app");