1
我正在使用AsyncTask
從數據庫中檢索一些信息。 因此,doInBackground
方法內,我寫入以下代碼:使用適配器和asynctask時,關閉光標的位置?
dbhandler = new DbHandler(TestActivity.this);
db = dbhandler.getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT sys_id as _id,statuses,user,created_at FROM status ORDER BY sys_id desc", null);
Log.d(TAG, "cursor got count: " + cursor.getCount());
return cursor;
我用這個光標在postExecute
方法,該方法是:
adapter = new TimelineAdapter(TestActivity.this, cursor);
listTimeline.setAdapter(adapter);
dbhandler.close();
Log.d(TAG, "Getting here ...");
現在的問題是:如果我保持這個,因爲它是,我在logcat
中得到一個錯誤,說光標必須關閉。但是,當我在postExcecute()
方法中編寫cursor.close()
時,雖然我的遊標具有有限的計數,但我無法檢索單個記錄。