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



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

实际上不需要使用XML文件来获取可绘制对象的资源ID。在编译时,'R.java'文件被写入,其中包含资源id和实际资源之间的映射。要获取资源Id,只需使用:

int test1ResId = R.drawable.test1;

如果字符串为'test1'。获取资源id的正确方法是

getIdentifier (String name, String defType, String defPackage);

getResources().getIdentifier("test1","drawable","com.app"); 

最新更新