我有一个sherlockactivity
implements
和onItemClickListener
。然后我创建了一个新的ListView
并将数据放入其中,我想在actionbarsherlock
的顶部创建一个搜索,就像很多着名的应用程序一样。
这是我的代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
SearchView searchView = new
SearchView(getSupportActionBar().getThemedContext());
menu.add("Search")
.setActionView(searchView)
.setShowAsAction(
MenuItem.SHOW_AS_ACTION_IF_ROOM
| MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
return true;
}
目前,单词"搜索"显示在actionbarsherlock
的顶部。如果我点击它,textfield
会显示actionbarsherlock
。 但是当我输入任何内容或点击search
时(在键盘中)没有任何反应。我错过了什么?
答案 0 :(得分:1)
这两个方法是您需要覆盖以控制用户在SearchView上键入内容以及用户点击搜索按钮时所需的方法:
public class MyClass extends SherlockActivity implements SearchView.OnQueryTextListener{
...
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
}
然后你需要
searchView.setOnQueryTextListener(this);