アクションバーシャーロックを使用しています。起動時に表示されるアクティビティは、すぐに検索を開始するために「検索モード」で開始する必要があります。そのために、次のコードを使用します。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
//collapse search
MenuItem searchItem = menu.add(Menu.NONE, R.string.inlineSearch, Menu.NONE, getString(R.string.inlineSearch)).setIcon(R.drawable.menu_search);
searchItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
searchView = new SearchView(this);
searchItem.setActionView(new SearchView(this));
searchItem.expandActionView();
return true;
}
SearchView は Android / Actionbar Sherlock が提供する View です。
私が直面している問題は、何をしても、アイテムが起動時に展開されないことです。別のアクションバー項目を使用して、起動後に expandActionView メソッドを呼び出してみましたが、何も変わりませんでした。CollapsibleActionView を実装する独自のビューを実装しましたが、メソッド onActionViewExpanded() および onActionViewCollapsed() が呼び出されません。
しかし、SearchView の折りたたまれたボタンをクリックすると、期待どおりにビューが展開されます。
私が間違っていることを誰かが知っていますか?ご協力いただきありがとうございます!