显示软键盘时后退键的Android键事件?

显示软键盘时,我试图捕获“后退”键事件。

我使用的是SDK版本8,仅当按如下所示隐藏软键盘时,才能成功捕获后退键事件:

@Override
public void onBackPressed() {
    // do something
    super.onBackPressed();
}

问题是显示软键盘时系统没有调用此方法。我试图登录onKeyDown / Up()方法以及上面的方法来弄清楚在这种情况下正在发生的事情是无济于事的。见下文:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    //DEBUGGING
    Log.d(TAG + "KeyUP", String.valueOf(event));
}

将按预期返回音量和菜单键的日志,但是仅当隐藏软键盘和菜单时才记录返回键。

是否有任何“后退键”大师可以解释这种现象?

任何帮助是极大的赞赏。

在这个网站和Android API上深入研究之后,我发现

KeyEvent.KEYCODE_BACK

被具有输入法连接的IME捕获并吞噬,并且当前显示该输入法(换句话说,未隐藏软键盘)。这意味着该事件在系统调用Activity类的onKeyDown()或onKeyUp()方法之前被消耗。

要解决此问题,请创建IME小部件的子类(TextView或其子类,如EditText)并实现onKeyPreIme()

堆栈用户i2097i在此处的活动中发布了一个很好的解决方案,用于实现onKeyPreIme()如果您希望保留Android的默认行为(即关闭键盘),只需确保在onKeyPreIme()覆盖中返回FALSE。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在按下返回键时隐藏软键盘

来自分类Dev

Android软键盘显示在Webview上

来自分类Dev

Android软键盘显示在Webview上

来自分类Dev

在Android中显示软键盘

来自分类Dev

android:不自动显示软键盘

来自分类Dev

防止在按下Android后退按钮时关闭软键盘

来自分类Dev

在WindowsPhone / Windows 8.1中按Enter键时如何隐藏软键盘?

来自分类Dev

Angular2/Nativescript:在软键盘上按下返回键时提交表单

来自分类Dev

有没有办法在Android软键盘中隐藏一些键?

来自分类Dev

Android:将 DONE 键添加到软键盘已弃用属性

来自分类Dev

软键盘上的Phonegap Override Go键

来自分类Dev

软键盘长按退格键是如何工作的?

来自分类Dev

显示对话框时,活动中的外部edittext不在Android中显示软键盘

来自分类Dev

显示软键盘时,为什么android:windowSoftInputMode =“ stateVisible | adjustResize”不能调整屏幕?

来自分类Dev

当软键盘重叠显示时,如何自动滚动到Android中的输入字段?

来自分类Dev

显示软键盘时,Scrollview不会缩小

来自分类Dev

显示软键盘时上移布局

来自分类Dev

对话框片段下方显示的Android软键盘

来自分类Dev

Android单击EditText不会显示软键盘

来自分类Dev

Android:在软键盘前面显示对话框

来自分类Dev

如何在Android片段中完美显示软键盘?

来自分类Dev

Android单击EditText不会显示软键盘

来自分类Dev

在软键盘上显示ankushsachdeva表情符号(Android)

来自分类Dev

Android软键盘未在按钮单击上显示

来自分类Dev

对话框片段下方显示的Android软键盘

来自分类Dev

Android:如何在LinearLayout上显示软键盘

来自分类Dev

Android显示@用手机软键盘签名

来自分类Dev

停止 setText() 在 EditText 上显示 Android 软键盘

来自分类Dev

Android在启动时避免使用软键盘

Related 相关文章

  1. 1

    在按下返回键时隐藏软键盘

  2. 2

    Android软键盘显示在Webview上

  3. 3

    Android软键盘显示在Webview上

  4. 4

    在Android中显示软键盘

  5. 5

    android:不自动显示软键盘

  6. 6

    防止在按下Android后退按钮时关闭软键盘

  7. 7

    在WindowsPhone / Windows 8.1中按Enter键时如何隐藏软键盘?

  8. 8

    Angular2/Nativescript:在软键盘上按下返回键时提交表单

  9. 9

    有没有办法在Android软键盘中隐藏一些键?

  10. 10

    Android:将 DONE 键添加到软键盘已弃用属性

  11. 11

    软键盘上的Phonegap Override Go键

  12. 12

    软键盘长按退格键是如何工作的?

  13. 13

    显示对话框时,活动中的外部edittext不在Android中显示软键盘

  14. 14

    显示软键盘时,为什么android:windowSoftInputMode =“ stateVisible | adjustResize”不能调整屏幕?

  15. 15

    当软键盘重叠显示时,如何自动滚动到Android中的输入字段?

  16. 16

    显示软键盘时,Scrollview不会缩小

  17. 17

    显示软键盘时上移布局

  18. 18

    对话框片段下方显示的Android软键盘

  19. 19

    Android单击EditText不会显示软键盘

  20. 20

    Android:在软键盘前面显示对话框

  21. 21

    如何在Android片段中完美显示软键盘?

  22. 22

    Android单击EditText不会显示软键盘

  23. 23

    在软键盘上显示ankushsachdeva表情符号(Android)

  24. 24

    Android软键盘未在按钮单击上显示

  25. 25

    对话框片段下方显示的Android软键盘

  26. 26

    Android:如何在LinearLayout上显示软键盘

  27. 27

    Android显示@用手机软键盘签名

  28. 28

    停止 setText() 在 EditText 上显示 Android 软键盘

  29. 29

    Android在启动时避免使用软键盘

热门标签

归档