[问题] 请教写法上的问题

楼主: keieykdx (YOz桑)   2015-07-23 17:50:07
有一个语法上的问题
我使用了 Linearlayout 在循环中陆续 加入 items (必须使用这方式), 语法如下:
linearlayout.addView(item);
item 中有个删除该 row 的 button, 我在 addView 之前绑订他的监听,
其中除了removeView 之外, 同时也删除了该 row 于 List 内的资料。
但是在绑订删除按钮监听的时候,必须将 i 转变成 finalI,
因为他是 inner class, 此时的 finalI 是为了用来处理要删除 List 中第几个资料。
最后在执行的时候,如果从最后一个删除回来不会有任何错误。
但假设先删除中间某个在删除最后一个就会 crash,
原因是删除 List 资料时 OutOfBounds,
因为最后一个的 finalI 不会因为删除中间后自动往前移动一个。
请问有办法让他自己往前移动一格吗?
作者: llI (...)   2015-07-23 18:33:00
删了之后整个linearlayout重建一次?
作者: KeySabre (KeySabreur)   2015-07-23 19:38:00
所以问题是listener中用旧的位置去对已经变化的资料list可以试试 setTag/getTag,再使用data去remove而非使用index
楼主: keieykdx (YOz桑)   2015-07-24 09:30:00
感谢大家回应,我会尝试看看的后来使用 linearlayout重建一次 的方法解决了问题

Links booklink

Contact Us: admin [ a t ] ucptt.com