android XML从XML获取资源ID(整数)

时间:2011-10-19 00:35:12

标签: android xml resources

我有一个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);

2 个答案:

答案 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");