我有一個使用MyCursorAdapter
的MyListFragment
實現。正如名稱所示,它們都擴展了各自的Android類。使用LoaderManager和CursorAdapter的CRUD
我通過this Loader/LoaderManager tutorial閱讀。所以,現在我的查詢發生在
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
return new CursorLoader(blah1, blah2, blah3, blah4, blah5, blah6);
}
和LoaderManager與裝載機一起照顧的時候重新查詢和更新,運行獨立的線程進行查詢,而不必我擔心它同步。到現在爲止還挺好。
我有2個問題:
1)我實現了一個MyContentProvider
。這是怎麼形成的?
- >看起來上述new CursorLoader(......)
通過MyContentProvider
進行查詢,因爲它使用URI作爲第一個參數。
2)我還需要在列表中刪除/更新/插入項。我是否應該在MyListFragment
內的MyContentProvider
的所需位置撥打我的相應方法?如果是,那麼我是否也可以手動加載這些項目,而不需要加載器來處理它?如果不是,那麼正確的方法要做什麼?我沒有在網上找到任何信息。任何指針讚賞。
啊,好的。感謝你的回答!這就說得通了。我沒有使用'ContentResolver.notifyChange()',所以想知道把加載器放在哪個地方。但現在我明白了,一切都連接起來了! – rgamber
但是,如果在我目前的CursorLoader中,我還更新屬於同級片段的一些數據。這沒有得到更新。看起來我仍然缺少一些東西。 – rgamber
只要爲正在使用的URI調用notifyChange,就應該更新它。 –