私が取り組んでいるアプリケーションには、3 つのフラグメントを持つアクティビティがあります。各フラグメントは、IntentService から受信したデータを表示する必要があります。
Fragment 1 - アイコン、名前、および説明 Fragment 2 - 記事のリスト Fragment 3 - アイテムのリスト
public class Activity extends SherlockFragmentActivity implements Actionbar.Tablistener
{
public void onCreate(..) {
....
performSearch();
setupTabs(); // 3 tabs are setup, their clicks and swipes init'ed
...
}
@Override
public void onResume() {
IntentFilter intentFilter = new IntentFilter(SearchRequestReceiver.ACTION);
intentFilter.addCategory(Intent.CATEGORY_DEFAULT);
searchRequestReceiver = new SearchRequestReceiver(this);
registerReceiver(searchRequestReceiver, intentFilter);
}
@Override
public void onPause() {
unregisterReceivers();
}
...
public void performSearch() {
Intent intent = new Intent(this, SearchRequest.class);
intent.putExtra("searchTerm", this.searchTerm); // declared and initialised earlier
startService(intent);
}
...
}
このデータを受信機からフラグメントにプッシュするための最良の方法は何ですか?それとも間違った方法でアプローチしていますか? サービスをコンテキストから切り離したかったので、AsyncTasks を使用しませんでしたか、それとも間違った決定でしたか?