我也百度了很多帖子,也试过网上的很多例子,但是依旧没能解决问题。希望能有好心人帮我看一下,不胜感激。 |
|
那到底你是现在出现了什么问题?
|
|
额、、好像真的忘了说了,问题是这个填写问题,和查看问题一开始加载是对的,再一刷新就乱了 |
|
是跳到另一个activity回来就乱了吗
|
|
你用个hashmap去存储状态吧,,,
|
|
是一滑动,listview重绘之后就乱了 |
|
用了,勾选状态是没错,但是这个显示填写跟查看乱了 |
|
更改后怎么个乱法
|
|
保存状态应该不会错乱的呀。。。 |
|
那就是adpter里面的postion对应不对,你debug看看getview的position是否是你要的position |
|
40分 |
原因很简单,出现这情况证明你 使用缓存的 convertView,初始时ListView会从BaseAdapter中根据当前的屏幕布局实例化一定数量的view对象,不出意外是屏幕能够显示的数量+1个。 当你滑动屏幕的时候出现错乱是因为你所使用的某一个convertView里面的checkBox被选定过别的属性, 当下一个position使用这个convertView的时候checkBox应该被重新初始化一下,因为你这里
if(!ct.isChecked){}里写了逻辑 但else没有写checkBox是否被选中吧。不知道不能看懂不。 |
怎么个乱法。楼主贴图。就能知道是位置问题还是复用问题。干
|
|
那个你说的checkbox重新初始化一下该怎么写呢? |
|
ViewHolder holder = null; 因为ct.isChecked的初始值是false: |
|
没错写对了,把分给我把。。
|
|
话说我这是第一次发帖,还真不知道怎么给分,哈哈 |