SQLite データベースを使用しており、ContentProvider
.
サブクラス化された SimpleCursorLoader ( ContentProvider なしの CursorLoader の使用から取得) をLoaderManager
.
上書き方式で
@Override
public Loader<Cursor> onCreateLoader(int ID, Bundle args) {
return new ListCursorLoader(this, dBHelper);
}
ListCursorLoader
からに変換できないというタイプの不一致が発生しLoader<Cursor>
ます。その場で (つまり、メソッド内で)を作成しようとしましたListCursorLoader
が、これも機能しません。
これが私のコードですListCursorLoader
:
package utilities;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
public class ListCursorLoader extends SimpleCursorLoader {
private DBAdapter dBAdapter;
public ListCursorLoader(Context context, DBAdapter adapter) {
super(context);
dBAdapter = adapter;
}
@Override
public Cursor loadInBackground() {
Cursor cursor = null;
dBAdapter.open();
try {
cursor = dBAdapter.getAllQueries();
} catch (SQLException e) {
e.printStackTrace();
}
if (cursor != null) {
cursor.getCount();
}
return cursor;
}
}
ご覧のとおり、loadInBackground()
メソッドを上書きしただけで、何が間違っているのかわかりません。
皆さんが助けてくれることを願っています!