我一直在浪費太多的時間在這個,所以不得不再次問。我不知道爲什麼這會發生。數組適配器notifyDataSetChanged()將不起作用
我有一個數組適配器(aAdapter)和一個數組列表(aList),我試圖把一個清除按鈕來擦除數據庫中的條目並清除列表。
我的問題是NotifyDataSetChanged()從我的點擊數的方法在這裏裏面只是不會工作:
public void clearDB(View view) {
aList.clear();
aAdapter.notifyDataSetChanged();
HighScoresDB hsdb = new HighScoresDB(HighScoresActivity.this);
hsdb.openDB();
hsdb.clearDB();
hsdb.closeDB();
}
它從其他地方,雖然工作。我甚至試圖把清除和notifyDataSetChanged()在另一種方法,並調用它,但也不起作用,但是,當我從onCreate調用它時,工作。
任何想法?
p.s.數據庫正在清除。
你試過'notifyDataSetInvalidated()'而不是'notifyDataSetChanged()'嗎? – edthethird 2012-06-08 02:16:23
如果你有一個數據庫,我強烈建議使用CursorAdapter。這是神奇的!你不必做notifyDataSetChanaged()它只會知道你已經對數據庫進行了改變並且自己進行了全部更新。 – MinceMan 2013-09-06 23:02:12