< 返回租用问题列表
Android ListView适配器notifyDataSetInvalidated()与notifyDataSetChanged()
发布时间:2023-09-27 06:10:28
Android ListView适配器notifyDataSetInvalidated()与notifyDataSetChanged()
Android中的ListView适配器有两个方法用于刷新数据,分别是notifyDataSetInvalidated()和notifyDataSetChanged()。
- notifyDataSetInvalidated()方法用于通知适配器数据集已无效,并需要重新加载数据。当调用此方法时,ListView将会重绘所有的子项,并调用适配器的getView()方法重新获得数据。这个方法通常在数据集产生结构性变化时使用,比如数据集被清空还是重新加载。这个方法将会重置ListView的状态,使其回到初始状态。
- notifyDataSetChanged()方法用于通知适配器数据集已改变,需要刷新显示的数据。当调用此方法时,ListView将会重新绘制显示的子项,并调用适配器的getView()方法重新获得数据。这个方法通常在数据集产生内容上的变化时使用,比如某一项数据产生改变。这个方法不会重置ListView的状态,只会刷新数据。
综上所述,notifyDataSetInvalidated()方法用于重绘ListView并重新加载数据,而notifyDataSetChanged()方法用于刷新ListView的显示数据。两个方法的使用处景区分,根据需要选择适合的方法来刷新数据。