作者liyard (Keyword)
看板java
标题Re: [问题] android 连续使用alertDialog 做选单
时间Wed Dec 2 22:41:50 2009
※ 引述《FirstFan (Evan)》之铭言:
: 原文恕删
: 我已经发现是哪里的问题了,虽然我并不知道原因。
: <array name="array">
: <item>1234</item>
: <item>abcd</item>
: <item>xyz</item>
: </array>
: 在String[] arrayitem = getResources().getStringArray(R.array.array);後
: arrayitem[1]和arrayitem[2]的内容都是正确的,而arrayitem[0]中是null
删除部份
这不是bug,这是用法有问题
因为你只给他<array>,对於Android来说,他并无法分辨内容item是什麽,所以他只好用
预设的眼光来看item
<item>1234</item> <<这是integer
<item>abcd</item> <<这是string
<item>xyz</item> <<这是string
而呼叫的code是getResources().getStringArray(R.array.array);
所以第一个他认不出来,自然给的就变成null
同样的如果你是getIntArray,你会发现第二、三项都传回0
这方面和一般程式语法其实还蛮像的,一般array也是要定义是int[]还是string
所以请使用比较明确的<string-array name="array">,来说明这个array是存放string
同理也有<integer-array>之类的,有兴趣可以多玩看看XD
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.84.147
1F:推 FirstFan:Got it. 谢谢 12/02 23:09
2F:推 pilisir:了解,还真的忘了第一组是数字,谢谢两位解答 12/03 11:12