2013-04-30 33 views
1

我知道一個活動可以創建一個意圖並將其發送到一個IntentService。Android:SQLite:加載數據查詢IntentService

我知道IntentService完成了請求,可以將消息發送回調用活動。

我知道從IntentService發送給主叫活動消息可以包含一個Bundle [使用setData(捆B);]

問題:從IntentService發送給主叫活動的消息可以包含一個Bundle /任意大小的遊標(比方說169條記錄)?

回答

-1

我能夠找到一種方法,從另一個線程使用此article從我的ListView中獲取數據。

現在我既可以從查詢SQLite數據庫加載視圖,也可以從我的活動視圖獲取用戶輸入,並使用相同的IntentService將數據插入SQLite數據庫(SQLite數據庫中每個表的一個IntentService,不包括自定義觸發器類[與同一個表關聯的所有活動使用相同的IntentService])!

當IntentService使用消息類響應呼叫活動,我的東西與含有序列化的二維陣列的包消息[Bundle.putSerializable(「標籤」,2DArray)]從SQLite的分貝返回查詢。

在數組轉換爲包含具有兩個字段的自定義類的數組中,該數組隨後綁定到自定義ArrayAdapter。

通知不是必需的,因爲每次調用Activity.onResume()時,視圖都會重載最新數據。

0

光標不可見...所以它可能不能作爲Bundle的一部分傳遞。

通常,IntentService模式用於修改共享模型(可能是數據庫或甚至是完整的內容提供者)中的記錄,活動通過Loaders將其設置爲該模型中感興趣的Uris。

而且,使用帶光標的Loaders並不一定意味着你必須編寫一個內容提供者,但如果你這樣做,它確實有幫助。

相關問題