(我是自学的Android所以我的Java复杂一点的东西都是从Android中了解的)
5 个解决方案
#1
notifyDataSetChange 是把listview里面的条目重新加载了一遍吧,相当于重新走了一遍getView()方法
#2
我觉得:
new Adapter的时候,传入了数据对象的地址,数据变化,但对象的地址不会变,而你调用notifyDataChanged方法,重新调用了getSize、getView方法,虽然你没有告诉它数据变了,但是它存储的是对象地址,根据地址获取到这个对象,所以重绘页面的时候是变化后的数据
new Adapter的时候,传入了数据对象的地址,数据变化,但对象的地址不会变,而你调用notifyDataChanged方法,重新调用了getSize、getView方法,虽然你没有告诉它数据变了,但是它存储的是对象地址,根据地址获取到这个对象,所以重绘页面的时候是变化后的数据
#3
那能给一下Java代码的demo,大神~
#4
能给个Java的简单Demo示例吗?大神~我很多是从Android学到java的,所以不太熟悉java
#5
这个不就是设置适配器,然后改变数据,再notifyDataChanged吗,这个怎么写demo。。。。。
你可以打开调试模式,看数据对象的地址和数据内容的变化,可能会帮助你理解
#1
notifyDataSetChange 是把listview里面的条目重新加载了一遍吧,相当于重新走了一遍getView()方法
#2
我觉得:
new Adapter的时候,传入了数据对象的地址,数据变化,但对象的地址不会变,而你调用notifyDataChanged方法,重新调用了getSize、getView方法,虽然你没有告诉它数据变了,但是它存储的是对象地址,根据地址获取到这个对象,所以重绘页面的时候是变化后的数据
new Adapter的时候,传入了数据对象的地址,数据变化,但对象的地址不会变,而你调用notifyDataChanged方法,重新调用了getSize、getView方法,虽然你没有告诉它数据变了,但是它存储的是对象地址,根据地址获取到这个对象,所以重绘页面的时候是变化后的数据
#3
那能给一下Java代码的demo,大神~
#4
我觉得:
new Adapter的时候,传入了数据对象的地址,数据变化,但对象的地址不会变,而你调用notifyDataChanged方法,重新调用了getSize、getView方法,虽然你没有告诉它数据变了,但是它存储的是对象地址,根据地址获取到这个对象,所以重绘页面的时候是变化后的数据
能给个Java的简单Demo示例吗?大神~我很多是从Android学到java的,所以不太熟悉java
#5
我觉得:
new Adapter的时候,传入了数据对象的地址,数据变化,但对象的地址不会变,而你调用notifyDataChanged方法,重新调用了getSize、getView方法,虽然你没有告诉它数据变了,但是它存储的是对象地址,根据地址获取到这个对象,所以重绘页面的时候是变化后的数据
能给个Java的简单Demo示例吗?大神~我很多是从Android学到java的,所以不太熟悉java
这个不就是设置适配器,然后改变数据,再notifyDataChanged吗,这个怎么写demo。。。。。
你可以打开调试模式,看数据对象的地址和数据内容的变化,可能会帮助你理解