查看Android源代码,结果发现这些inflate方法是使用XmlResourceParser调用的. AndroID使用的实现是XmlBlock.Parser,但这不是公共API.
我可以使用XmlResourceParser公共实现吗?
@R_502_6120@ 您可以使用传统的XmlPullParser,如 Android documentation中所述:inputStream yourRemoteLayout = ...;XmlPullParserFactory factory = XmlPullParserFactory.newInstance();XmlPullParser parser = factory.newPullParser();parser.setinput(yourRemoteLayout,"someEnCoding");AttributeSet attributes = Xml.asAttributeSet(parser);
有关详细信息,请参阅XmlPullParser documentation中的说明.
编辑:从LayoutInflater#inflate()文档:
important For performance reasons,vIEw inflation relIEs heavily on pre-processing of XML files that is done at build time. Therefore,it is not currently possible to use LayoutInflater with an XmlPullParser over a plain XML file at runtime.
我想,如果AndroID自己只依赖于预处理资源,那么也许你应该自己实现LayoutInflater.Factory2.
总结以上是内存溢出为你收集整理的android – XmlResourceParser实现全部内容,希望文章能够帮你解决android – XmlResourceParser实现所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)