我有一个DialogFragment用于浮动对话框,其中包括一个特殊的键盘,当用户在EditText字段内按下时弹出(正常IME被阻止显示)。
我希望键盘在用户按下返回按钮时关闭(visibility = GONE),但对话框仍然可见,就像普通的IME服务一样。然而,据我所知,从我在SO和其他地方的相当广泛的阅读中,似乎没有办法做到这一点。
如果我将对话框设置为不可取消,则因为对话框不可取消,我不会收到onCancel()或onDismiss()的通知。
如果我将对话框设置为可取消,则会收到通知,但对话框将被关闭。
我无法在片段中的对话框中附加onKeyListener,因为系统会替换它,以便片段可以处理对话框的生命周期。
有没有办法做到这一点?或者对于片段系统的目的,是否已经完全封锁了键事件的检测权限?
Dialog
could also be an instance ofAppCompatDialog
- SoftWyer