アクションバー項目としてスピナーを使用しています (スワイプによるタブ ナビゲーションも使用しています)。ローダーを使用してデータをロードする 2 つの listFragments (タブからアクセス) があります。スピナーで別のアイテムを選択するたびに、ローダーが再クエリを実行するようにします (アクティビティ レベルで動作します)。これはフラグメントのローダーの呼び出しの 1 つです。selectedNumber は、スピナー onSelectedItem からフラグメントに渡される文字列です (方法はまだわかりませんが、これは簡単なはずです)。
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
String selection= MyContentProvider.Data.E_NUMBER +"=";
String[] selectionArgs= {numberSelected};
return new CursorLoader(getActivity(), MyContentProvider.Data.CONTENT_URI_EVENTS,
null, selection, selectionArgs,
Data.E_ID + " DESC");
}
ローダーに強制的にコンテンツ プロバイダーを再クエリさせる方法はありますか? または、フラグメントをキャンセルして、新しいクエリで別のフラグメントを作成する必要がありますか?
(文字列をアクティビティから両方のフラグメントに渡す方法についての簡単なアドバイスはクールです)