私はこのコードを使用して折りたたみ可能なものを配置しView (EditText)
ましたActionBarSherlock
:
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.activity_main, menu);
//Used to put dark icons on light action bar
boolean isLight = false;
menu.add("Search")
.setIcon(isLight ? R.drawable.ic_search_inverse : R.drawable.ic_search)
.setActionView(R.layout.collapsible_edittext)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
return true;
}
setOnEditorActionListener
ビューを(IDで)設定しようとすると、アプリがクラッシュします。
EditText editText = (EditText) findViewById(R.id.search);
editText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
performSearch(v.getText().toString(), 3);
return true;
}
return false;
}
});
SearchField
ユーザーがキーボードの「検索」キーを押したときに入力して検索を実行する必要がありますが、ビューActionBar
にバインドする方法がわかりません。setOnEditorActionListener