如何在按Back键后保持自动完成文本视图的DropDownList打开



我在"活动"中使用AutoCompleteTextView,我需要它的DropDownList始终显示(它是窗口中唯一的视图),即使在按下Back键之后也是如此。我需要放弃软键盘。

我试图覆盖Activity的onBackPressed方法,但它根本没有被使用,所以BackPressed事件被处理在"更高"的地方。所以我试图找出在哪里,但AutoCompleteTextView没有定义onBackPressed方法。

有什么建议吗?

您可以创建自定义的AutoCompleteTextView并覆盖KeyPreIme(int keyCode,KeyEvent事件)方法

我还意识到这个方法被调用了两次,我只在第二次运行我的代码。以下是示例:

@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == 1) {
        //add your code here
        return true;
    }
    return super.onKeyPreIme(keyCode, event);
}

你可以试试这个

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
            //Your back key press logic
    }
    return true;
}

请记住,返回true可防止此事件进一步传播,返回false则表示您尚未处理此事件,应继续传播。

相关内容

  • 没有找到相关文章

最新更新