调用next()后,XmlResourceParser保持在START_DOCUMENT状态

时间:2018-08-09 02:00:10

标签: android android-xml android-xmlpullparser

以下代码在第四行引发异常

XmlResourceParser parser = context.getResources().getXml(R.xml.file);
parser.require(XmlPullParser.START_DOCUMENT, null, null);
parser.next();
parser.require(XmlPullParser.START_TAG, null, null);

,在添加调试打印语句后,发现在第一次调用next()之后,解析器仍处于 START_DOCUMENT 状态。向next()添加另一个呼叫可解决此问题。根据{{​​3}}的官方Android参考,这种行为是错误的:

  

START_DOCUMENT

     

通知解析器位于文档的开头,并且   什么都没读。只能通过调用来观察此事件类型   第一次调用next(),nextToken或nextTag()之前的getEvent()。

0 个答案:

没有答案