android – 如何在按放大镜时调用onSearchRequested

我正在使用searchView并尝试在有人调用搜索时传递一些数据.所以我覆盖了onSearchReqested方法.问题是,当有人在SearchView中键入并按下键盘上的放大镜时,不会调用此方法.而是启动结果活动.

当有人按下放大镜时,如何在开始结果活动之前调用onSearchRequested方法.

我尝试了这两个但它没有用.

@Override
public boolean onKeyDown(int keyCode,KeyEvent event) {
    if (keyCode == KeyEvent.FLAG_EDITOR_ACTION) {
        onSearchRequested();
        return false;
    }
    return false;
}

向searchview添加一个监听器也不起作用

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全部内容,希望文章能够帮你解决android – 如何在按放大镜时调用onSearchRequested所遇到的程序开发问题。

如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。