租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

Android ListView适配器notifyDataSetInvalidated()与notifyDataSetChanged()

发布时间:2023-09-27 06:10:28

Android ListView适配器notifyDataSetInvalidated()与notifyDataSetChanged()

Android中的ListView适配器有两个方法用于刷新数据,分别是notifyDataSetInvalidated()和notifyDataSetChanged()。

  1. notifyDataSetInvalidated()方法用于通知适配器数据集已无效,并需要重新加载数据。当调用此方法时,ListView将会重绘所有的子项,并调用适配器的getView()方法重新获得数据。这个方法通常在数据集产生结构性变化时使用,比如数据集被清空还是重新加载。这个方法将会重置ListView的状态,使其回到初始状态。
  2. notifyDataSetChanged()方法用于通知适配器数据集已改变,需要刷新显示的数据。当调用此方法时,ListView将会重新绘制显示的子项,并调用适配器的getView()方法重新获得数据。这个方法通常在数据集产生内容上的变化时使用,比如某一项数据产生改变。这个方法不会重置ListView的状态,只会刷新数据。

综上所述,notifyDataSetInvalidated()方法用于重绘ListView并重新加载数据,而notifyDataSetChanged()方法用于刷新ListView的显示数据。两个方法的使用处景区分,根据需要选择适合的方法来刷新数据。