Android Studio新手求助:如何解决strings.xml中「Unsupported Node 'item'」错误?
解决strings.xml中「Unsupported Node 'item'」错误
嘿,我来帮你搞定这个问题!
首先,你遇到的错误原因很明确:在Android的strings.xml资源文件里,普通的<array>标签并不适用于定义字符串数组,它是给其他类型数组(比如整数数组)预留的,所以编辑器识别不了里面的<item>节点,才会抛出这个错误。
关于你问的「把<item>改为<string>是否可行」——答案是不行的。<string>标签是用来定义单个独立的字符串资源的,不能嵌套在数组标签里使用,那样反而会引发新的语法错误。
正确的解决方法
只需要把你代码里的<array>标签替换成<string-array>就可以了,<item>节点完全不用改,这才是Android定义字符串数组的标准写法:
<string-array name="gender"> <item>Male</item> <item>Female</item> <item>Other</item> </string-array>
这样修改后,错误就会消失,你还能在代码里通过下面的方式获取这个数组:
String[] genders = getResources().getStringArray(R.array.gender);
如果之后你需要定义其他类型的数组(比如整数数组),记得用对应的标签,比如<integer-array>,里面同样用<item>来定义元素。
内容的提问来源于stack exchange,提问作者Andre Robinson
相关产品推荐
相关产品推荐

