我有一个 sherlockactivity
implements
a 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
(在键盘中)时,什么都不会发生。我想念什么?
这两个是您需要覆盖以控制用户在搜索视图上键入何时以及用户单击搜索按钮的方法:
: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);