我一直在看CursorAdapter實現的例子,以確保我做的一切都是正確的。爲什麼在停止時將ListView光標更改爲null?
我注意到,我沒有做的一件事是在Activity的onStop()處理程序中的CursorAdapter上調用changeCursor(null)。
mAdapter.changeCursor(null);
這是什麼目的?如果有充分的理由,我願意這樣做,但我討厭導航到另一個活動,備份到此活動,並在第二個屏幕上看到一個空白屏幕,直到查詢新的光標。
我一直在看CursorAdapter實現的例子,以確保我做的一切都是正確的。爲什麼在停止時將ListView光標更改爲null?
我注意到,我沒有做的一件事是在Activity的onStop()處理程序中的CursorAdapter上調用changeCursor(null)。
mAdapter.changeCursor(null);
這是什麼目的?如果有充分的理由,我願意這樣做,但我討厭導航到另一個活動,備份到此活動,並在第二個屏幕上看到一個空白屏幕,直到查詢新的光標。
這是什麼目的?
由於Falmarri表明,它是讓你Cursor
不再綁定到適配器,這樣你就可以close()
的Cursor
沒有問題。恕我直言,沒有必要撥打changeCursor(null)
在onStop()
。特別是如果您管理Cursor
(startManagingCursor()
,Activity
),則Android將爲您處理關於活動生命週期的Cursor
。
感謝您的澄清。我沒有活動管理光標。我基本上覆制了這個:http://apps-for-android.googlecode.com/svn-history/r77/trunk/RingsExtended/src/com/example/android/rings_extended/MusicPicker.java – Andrew 2010-10-08 01:08:58
我的猜測是,當遊標關閉時,它不會在適配器嘗試查詢遊標時引發異常 – Falmarri 2010-10-07 22:07:19