2010-09-16 13 views
6

我正在使用ContentProvider從Web服務查詢中緩存結果。它是一個HTTP請求,響應內容是XML。大部分數據都被緩存,所以我只需查詢數據庫(如果找不到),請求來自webservice,插入數據庫並重新查詢數據庫。因此,響應始終是來自SQLiteDatabaseHelper的Cursor。當沒有數據庫或表存在時,是否可以在Android中模擬sqlite3遊標?

我有一個結果集沒有存儲在數據庫中,因爲它是100%瞬態的,但我想提供來自數據庫的光標的外觀。是否有捷徑可尋?例如,如果我可以使用cursor.setValue(「string」,objectValue)或其他現有實現將其投影到遊標上。

如果不是,我將繞過數據庫獲取此內容結果,或將其填入不斷重複使用的普通表中。

+0

嘲笑任何東西都是微不足道的。 「你稱自己爲遊標?我的祖母比那更好的光標!」 :D – 2010-09-16 05:49:23

回答

10

根據您的使用方式,編寫自己的遊標類可能不會太困難。爲了方便起見,從AbstractCursor類派生您的類,它會爲您處理大量細節。您也可以使用MatrixCursor

+0

+1用於指出MatrixCursor。 – bhups 2010-09-16 06:12:20

+0

在我創建自己的子類之前,我會嘗試MatrixCursor - 這是我沒有嘗試的間接子類之一。 – mobibob 2010-09-16 11:12:41

+0

MatrixCursor完全是我在找的東西。這個實現大約有六行代碼。我編寫了一個遊標接口的對象,它的工作量很大,並且只有一次性使用方法的大量調試。未來,當我想我將在多個項目(或與其他開發人員)重用時,我將重新討論子類。 – mobibob 2010-09-16 16:09:19

相關問題