何時間も試しましたが、これを達成できませんでした。バンドル経由、静的変数経由、if ステートメント経由で送信しようとしましたが、何も機能しませんでした。
ユーザーがメニュー項目をクリックすると、ローダーにさまざまなデータセットをロードさせたい状況があります。これは、notifyChange を受け取ったらクエリを変更する必要があることを意味します。コードは、次のような非常に標準的なローダー コードです。
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
String query = args.getString("query");
String[] projection = { DbCreate.ID, DbCreate.COL_ITEM, DbCreate.COL_STATUS, DbCreate.COL_SYNCED,
DbCreate.COL_PRIORITY, DbCreate.COL_COMPLETEBY, DbCreate.COL_TAG, DbCreate.COL_ASSIGNED, DbCreate.COL_SHARED};
CursorLoader cursorLoader = new CursorLoader(getActivity(),
DbProvider.CONTENT_URI_DATA, projection, query, null, "priority DESC, status ASC, _id DESC");
return cursorLoader;
}
この onCreate メソッド内でも通常の if(...) ステートメントを試しましたが、うまくいきません。これは、notifyChange が既に作成されたオブジェクトをトリガーするだけであることを意味します。では、notifyChange に新しい「クエリ」値を挿入するにはどうすればよいでしょうか。