id="@+id/name"怎么获取 id 的 String 值,而不是 int

2017-10-26 11:49:02 +08:00
 18914940609
XMLparse 解析 xml 文件其中一个 Node 有一个 属性是 id="@+id/name",
通过 String idAttr = xmlParser.getAttributeValue(null,"id");
之前 buildTool 22 里面获取 value 是"@+id/name"
今天升级了 as3.0 和 buildTool 26 以后 获取的内容自动转换成 @1234 —— R 文件里生成的 id 了...请问怎么解决
5174 次点击
所在节点    Android
7 条回复
yuriko
2017-10-26 14:46:53 +08:00
这个我记得应该是编译时候就替换掉的吧?你确定以前能获取 String ?
18914940609
2017-10-26 16:53:26 +08:00
@yuriko 是可以的,上午升级了一下版本,别的都没改,断点出来就成这样了
yuriko
2017-10-26 16:59:16 +08:00
这个值不是 String 么,id 不是 int 么……
TestSmirk
2017-10-26 17:14:23 +08:00
解压 apk 看看 layout 有没有问题
18914940609
2017-10-26 18:22:31 +08:00
@yuriko 格式也是 String 的,但内容是"@21323232"
18914940609
2017-10-26 18:25:03 +08:00
@TestSmirk 不是 layout,在 xml 文件夹里面新建了一个 url.xml ,里面放 API 列表,一个 API 一个<Node>节点,里面有一个节点属性是 id="@+id/api_get_pic",编译以后会在 R 文件里生成一个 id,ranhou java 代码中通过 R.id.api_get_pic 来获取这个节点信息访问 API
yuriko
2017-10-26 18:48:08 +08:00
我怀疑你是不是换过 SDK 版本或者 gradle 版本之类的了,今天更新的时候貌似有推新的编译套件,我没升级就是了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/400903

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX