【问题标题】:How to listen for search key?如何监听搜索键?
【发布时间】:2013-01-23 18:48:55
【问题描述】:

我正在尝试监听搜索键,我在 stackoverflow 上找到了两个解决方案,但由于某种原因,它们都不能与搜索按钮一起使用。

@Override
public boolean onSearchRequested() {
     System.out.println("KEYDOWN");
     return true;
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
     System.out.println("KEYDOWN");
     return true;
}

如您所见,第一个选项只是搜索意图,第二个选项应该捕获所有按键,无论按键,onKeyDown 对我的 Nexus S 中的所有键(返回、菜单和音量键)都正常工作,但只是简单没有抓住搜索键。人们似乎很确定这些选项中的任何一个都应该工作,甚至在建议 onSearchRequested 的地方得到批准,但我已经在两部手机中尝试过,但它们都不起作用。

如何在 android 上捕获和禁用搜索键?

【问题讨论】:

  • 尝试发布的解决方案。这会对你有所帮助。
  • 您可以尝试将您的日志添加到dispatchKeyEvent。以防万一某些视图在途中捕获搜索键。
  • @Liso22 我认为来自 Jellybean 及以上的硬件搜索按钮已被 Google Now 拦截 - 因此您必须使用屏幕上的搜索按钮实现一个简单的解决方案。

标签: java android


【解决方案1】:

试试这个:

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        Toast.makeText(getApplicationContext(), "Fired", Toast.LENGTH_LONG).show();
        if (keyCode == KeyEvent.KEYCODE_SEARCH) {
            Toast.makeText(getApplicationContext(), "Search Key Fired", Toast.LENGTH_LONG).show();
            return true;
        }
        return super.onKeyDown(keyCode, event);
     }

或:

    @Override
    public boolean onSearchRequested() {
        Toast.makeText(getApplicationContext(), "onSearchRequested", Toast.LENGTH_LONG).show();
        return false;
    }

注意:

如果您的设备确实使用最新最好的操作系统,请继续并点按 那个谷歌搜索栏,你会看到“立即获取谷歌!” 屏幕(图 A)。此时,您可以选择启用 Google Now 或稍后关闭该功能。您也可以点击“了解更多” 了解 Google 即时提供的服务。

参考:

Google Now on Android Jelly Bean is more than just a search feature

谢谢

【讨论】:

  • Keydown 根本没有被搜索按钮触发。我尝试了代码,但它仍然可以打开 Google Now。
  • @Liso22 奇怪我只是再次测试代码并在super.onkeydown 之后放置 Toast 消息,它的工作原理就像一个魅力,它也完美地检查了 KeyEvent.KEYCODE_SEARCH 关键事件。
  • 我不明白,我正在用除搜索键之外的所有键获得您的第一个祝酒词。我得试试别的了
  • 这正是我问这个问题时所尝试的!除了你用除了日志之外的吐司。正如我所说,它们没有被检测到。我认为这是因为搜索键在 Jelly Bean 之后被截获,正如一些评论中所建议的那样
  • @Liso22 是的,你是对的。我添加了相同的 NOTE 和 REFERENCE。
猜你喜欢
  • 2014-10-25
  • 1970-01-01
  • 2018-04-15
  • 2019-04-01
  • 1970-01-01
  • 2014-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多