ActionBarSherlock SearchView를 시도하고 있습니다. 불행히도Sherlock으로 검색 ActionBar SearchView setOnKeyListener
public boolean onKey(View arg0, int arg1, KeyEvent event)
은 실행되지 않습니다. 그 이유를 알고 계십니까? 이 게시물에서 알 수 있습니다. SearchView imeOptions and onQueryTextSubmit support 사용자가 다른 방법으로 문제를 해결했다는 것을 알 수 있습니다. 어쩌면 내가 똑같이해야 할까? 이런 일을하고
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//Used to put dark icons on light action bar
boolean isLight = SampleList.THEME == R.style.Theme_Sherlock_Light;
//Create the search view
final SearchView searchView = new SearchView(getSupportActionBar().getThemedContext());
searchView.setQueryHint("Search for countries…");
System.out.println("searchView.getQuery()"+searchView.getQuery());
searchView.setOnKeyListener(new OnKeyListener()
{
/**
* This listens for the user to press the enter button on
* the keyboard and then hides the virtual keyboard
*/
@Override
public boolean onKey(View arg0, int arg1, KeyEvent event) {
// If the event is a key-down event on the "enter" button
System.out.println("--->"+searchView.getQuery());
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(arg1 == KeyEvent.KEYCODE_ENTER))
{
InputMethodManager imm = (InputMethodManager) SearchViews.this.getSystemService(SearchViews.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(searchView.getWindowToken(), 0);
return true;
}
return false;
}
});
menu.add("Search")
.setIcon(isLight ? R.drawable.ic_search_inverse : R.drawable.abs__ic_search)
.setActionView(searchView)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
return true;
}
읽을 수 있습니다. 해결책을 얻었습니까? – faizal