2012-10-20 66 views
4

我成功地編寫了一項服務,該服務從RSS供稿源下載數據,對其進行解析並將其保存到數據庫中。我還有一個活動片段,它使用光標加載器技術來檢索所有數據行並在水平屏幕上顯示它們。listview我從互聯網上清除掉。不斷向列表視圖中添加新數據的最佳方法

我的下一個任務是修改活動,使我可以每次連續詢問下一個x行數的用戶滾動到附近的列表視圖的結束,並將它們添加到listview。從技術上講,我的數據足夠小,如果我在啓動時顯示了10行,我可能只需查詢20並重置適配器 - 但似乎很難重複查詢相同的行。

所以基本上我的主要問題是:如何最好地將當前持有的listview內容填入Cursor/CursorAdapter與使用LoaderCallbacks的新查詢的結果結合起來?

其次,SQLiteQueryBuilder的limit參數的正確語法是什麼?儘管我認爲一串「offset, maxrows」是正確的,但我嘗試了很多變體?不管我提供什麼,但我總是從我的光標上得到getCount()

回答

0

在您的Adapter內部使用ArrayList項目時,當您要顯示新項目時,只需創建一個方法將它們插入到ArrayList中即可。

問題有關SQL你可以找到鏈接http://developer.android.com/reference/android/database/sqlite/SQLiteQueryBuilder.html 你必須添加上則方法BuildQuery對於極限,如果還是不行,請貼在這裏你的代碼

+0

鏈接到開發者參考不告訴我如何格式化子句 - 除了說'格式化爲LIMIT子句'。谷歌告訴我,sqlite有限制條款有兩個選項:'limit x offset y'和'limit y,x'。在我的測試中,包括單詞限制會導致查詢失敗,並出現語法錯誤,其中至少有一串'y,x'沒有。它不會產生正確的getCount值 - 或屏幕上的數據。 –

+0

啊,限制條款是我的錯 - 我的其餘查詢是不正確的。只要我確定限制條款如上所述完美工作。 –

相關問題