現在のシナリオ
私のアプリのホームページはナビゲーションドロワーで構成されているため、ビューをフラグメントとしてロードしています。ツールバーにも検索アイコンがあります。 menu.xmlに実装しました。次のステップでは、この質問の回答に従うことで、検索アイコンにSearchView
を実装しました ツールバーでの検索の実装 。
これは、検索ビューが示すように正常に機能しており、閉じることもできます。
[〜#〜]問題[〜#〜]
検索ビューに検索クエリを実装できますが、続行方法がわかりません。問題は、onCreateOptionsMenu
がActivity
にあり、検索ビューのすべてのコードがActivity
にあることです。私が理解していないのは、検索する必要があるデータがFragment
クラスにロードされているActivity
にあることです。別のWebサービスにアクセスして検索結果を取得しますが、Fragment
の検索データを再び膨らませるにはどうすればよいでしょうか。この状況でどう対処すればよいか理解できません。
これをあなたの断片に入れて
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
}
そして、次のようにSearchViewを取得できます
@Override
public void onPrepareOptionsMenu(Menu menu) {
MenuItem mSearchMenuItem = menu.findItem(R.id.mi_search);
SearchView searchView = (SearchView) mSearchMenuItem.getActionView();
}