作者codemonkey (程式猿)
看板AndroidDev
标题[闲聊] 用R.id连加方法取得n个UI widget
时间Fri Jun 8 10:05:04 2012
刚刚做了一个实验,假如说一个layout上面有100个button
(先不管造成这种局面的原因),
在Java@Android的程式架构下,
原来也可以用Button物件阵列和resource ID连加来处理:
//i=0~99
buttons[
i] = (Button)findViewById(R.id.firstButton +
i);
不过这样的作法好像非正规也不聪明,例如layout版面改变一下,
就得一段段下去改程式了,特别是在有复杂UI的环境下...
所以,还是用执行阶段加入widget、或是利用Inflater物件才是正解?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.217.188.133
1F:推 LaPass:因为R.id.firstButton本身就是个int 06/08 10:17
2F:→ LaPass:执行阶段动态加入Button才是问题的根本解法 06/08 10:18
3F:推 gpc:aapt是用档名来排编号的 所以档名按字母排就可以连号了! 06/08 11:00
4F:推 CyberRay:如果只是为了get view,buttons 上层用个ViewGroup包起来 06/08 11:29
5F:→ CyberRay:然後在用ViewGroup.getChildAt(i) 这样有正规到吗? 06/08 11:30
6F:推 lovelycateye:程式动态加入,用个List存起来不就好了? 06/08 22:48