我正在使用 searchView
并尝试在有人调用搜索时传递一些数据。所以我覆盖了 onSearchReqested
方法。问题是,当有人在 SearchView
中键入内容并按下键盘上的放大镜时,不会调用此方法。相反,结果 Activity 开始了。
当有人按下放大镜时,如何在开始结果 Activity 之前调用 onSearchRequested
方法。
这两个我都试过了,但没用。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.FLAG_EDITOR_ACTION) {
onSearchRequested();
return false;
}
return false;
}
向搜索 View 添加监听器也不起作用
searchView.setOnSearchClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onSearchRequested();
}
});
在此先感谢您的帮助。
最佳答案
setOnQueryTextListerner 终于成功了
searchView.setOnQueryTextListener(new OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
onSearchRequested();
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
// TODO Auto-generated method stub
return false;
}
});
关于android - 按下放大镜时如何调用onSearchRequested,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12619363/