如何在android中获取属性id =“@ + id / name”的String值

时间:2017-10-26 04:08:01

标签: android xml

我有

String idAttr = xmlParser.getAttributeValue(null,"id");

在xml文件夹的url.xml中, enter image description here

当我使用Android Studio 2.2和buildTool 22.0.0时,执行

idAttr

"@+id/api_msg_list"final XmlResourceParser xmlParser = context.getResources().getXml(R.xml.url); int eventCode; try { eventCode = xmlParser.getEventType(); while (eventCode != XmlPullParser.END_DOCUMENT) { switch (eventCode) { case XmlPullParser.START_DOCUMENT: break; case XmlPullParser.START_TAG: if ("UrlConfig".equals(xmlParser.getName())) { ... } else if ("Node".equals(xmlParser.getName())) { String idAttr = xmlParser.getAttributeValue(null,"id"); if (idAttr.startsWith("@+id/")){ ... } ... } break; case XmlPullParser.END_TAG: break; default: break; } eventCode = xmlParser.next(); } }

idAttr

但是我今天早上将Android Studio更新为3.0并将buildTool更新为26.0.2后,

"@123456.."转向if,因此无法再进入"@+id/api_msg_list"

我的问题是我怎样才能获得像"@123456..."这样的id的纯String值,而不是像public class Application { private String mId; .... } intent.putExtra("id", myApplication.getId()); 那样自动变成R文件的int值,非常感谢。

0 个答案:

没有答案