android 我有这样一个listView,adapter是通过继承BaseAdapter来的,点击加减按钮数字会变化,
(比如第一行初值为1,点击加号按钮变为了5),当我下滑listview的时候第一行被遮住了,再往上滑动第一行重新显示出来的时候,数字变回了原来的初值1,为什么,求解决...
(比如第一行初值为1,点击加号按钮变为了5),当我下滑listview的时候第一行被遮住了,再往上滑动第一行重新显示出来的时候,数字变回 了原来的初值1,为什么,求解决
展开
1个回答
展开全部
这是由于listView这个控件的特性造成的。它的行为是这样:将要显示的ListView的条目会重用即将被屏幕遮挡住的条目,这就造成了它要不断的刷新条目来显示内容。当点击加号变为5的按钮被遮挡时,就会被刚展示出的条目给重用掉,这时,你没有保留这个5的信息,所以当这个条目展示时内容已经被刷新为初始值了。如果想要保持住原来信息,那么就要把这个条目的信息给记录下来,一般用map<条目索引,改变的值>记录,然后这个条目重现时,根据它的索引获取到map中的值放到该条目上即可。
追问
可不可以给个差不多问题文章的网址呢,参考参考
追答
http://www.cnblogs.com/a284628487/p/3165947.html 这个跟你的问题差不多。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询