尝试刷新由ListView
填充的CursorAdapter
,我原以为这样会有用:
SimpleCursorAdapter listAdapter;
@Override
protected void onRestart() {
super.onRestart();
listAdapter.swapCursor(listAdapter.getCursor());
}
因为它将光标从旧的光标切换到新的光标,ListView
获取新数据。为什么这种方式不起作用?替代方案是什么?
稍微多一些信息,swapCursor()
应该返回旧光标,但在上面它返回null。
编辑:
我知道为什么它不起作用。 swapCursor()
检查新光标和旧光标是否相同,如果是,那么它什么都不做:
public Cursor swapCursor(Cursor newCursor) {
if (newCursor == mCursor) {
return null;
}
changeCursor
来电swapCursor
所以无法使用它。现在把它变成工作......