当前位置: 动力学知识库 > 问答 > 编程问答 >

android - XmlPullParser getAttributeValue returns null

问题描述:

I have the following XML structure stored in my assets/xml folder:

<?xml version="1.0" encoding="utf-8"?>

<homescreen>

<homeitem name="Name1"

subtext="Description1"

icon="iconresource1" />

<homeitem name="Name2"

subtext="Description2"

icon="iconresource2" />

<homeitem name="Name3"

subtext="Description3"

icon="iconresource3" />

</homescreen>

I'm reading each individual homeitem using an XmlPullParser:

int event;

String TAG_ITEM = "homeitem";

while ((event = parser.next()) != XmlPullParser.END_DOCUMENT) {

if (event == XmlPullParser.START_TAG) {

String tag = parser.getName();

if (TAG_ITEM.equals(tag)) {

// Works - Logs "Name1"

Log.d(LOG_NAME, parser.getAttributeValue(0));

// Works - Logs "name"

Log.d(LOG_NAME, parser.getAttributeName(0));

// Works - Logs ""

Log.d(LOG_NAME, parser.getAttributeNamespace(0));

// Fails - Logs null

Log.d(LOG_NAME, parser.getAttributeValue(XmlPullParser.NO_NAMESPACE, "name"));

}

}

}

My problem is: using getAttributeValue(String, String) always returns null. Using getAttributeValue(Integer) works fine. What am I doing wrong?

Device: Nexus 10, Stock KitKat 4.4

网友答案:

try this :

parser.getAttributeValue(null, "name"); 
分享给朋友:
您可能感兴趣的文章:
随机阅读: