android xml中attribute,android – 我无法从我的XML资源中读取AttributeSet

博客内容讲述了开发者遇到的一个问题,即在使用XmlResourceParser解析XML布局文件时,由于误解了解析器的工作方式,导致无法获取到TextView的属性集。解决方案是通过迭代解析器的元素,直到找到TextView,然后获取其属性集。这个过程涉及到Android资源的解析和XMLPullParser的使用。
摘要由CSDN通过智能技术生成

问题是对解析器功能的误解.行后:

XmlResourceParser parser = r.getXml(R.layout.testcameraoverlay);

解析器位于文档的开头,并且尚未读取任何元素,因此没有属性集,因为属性当然总是相对于当前元素.所以要解决这个问题,我不得不做以下这些迭代过的元素,直到我得到“TextView”:

AttributeSet as = null;

Resources r = getResources();

XmlResourceParser parser = r.getLayout(R.layout.testcameraoverlay);

int state = 0;

do {

try {

state = parser.next();

} catch (XmlPullParserException e1) {

e1.printStackTrace();

} catch (IOException e1) {

e1.printStackTrace();

}

if (state == XmlPullParser.START_TAG) {

if (parser.getName().equals("TextView")) {

as = Xml.asAttributeSet(parser);

break;

}

}

} while(state != XmlPullParser.END_DOCUMENT);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值