Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Listview会自动更新,但为什么?_Android - Fatal编程技术网

Android Listview会自动更新,但为什么?

Android Listview会自动更新,但为什么?,android,Android,这是我的代码: 问题是,为什么单击“确定”按钮后列表视图会得到更新。我知道我在Arraylist中添加了一个项目,但为什么我不需要刷新listView或适配器的内容。。。我不明白://数组适配器的默认实现是当一个项目被添加到add(),remove(),插入(),清除(),等等时自动调用notifyDataSetChanged(),因此,适配器会自动得到通知 您可以通过调用adapter.setNotifyOnChange(false)来更改此行为。请记住,notifyDataSetChang

这是我的代码:


问题是,为什么单击“确定”按钮后列表视图会得到更新。我知道我在Arraylist中添加了一个项目,但为什么我不需要刷新listView或适配器的内容。。。我不明白://

数组适配器的默认实现是当一个项目被添加到
add()
remove()
插入()
清除()
,等等时自动调用
notifyDataSetChanged(),因此,适配器会自动得到通知

您可以通过调用
adapter.setNotifyOnChange(false)
来更改此行为。请记住,
notifyDataSetChanged()
会将
notifyOnChange
重写回true,因此如果调用前一个方法,则必须再次设置
notifyOnChange