我有一个浮动对话框的对话框片段,其中包含一个特殊的键盘,当用户按下EditText字段时会弹出(正常的IME停止显示).
当用户按下后退按钮(就像使用普通的IME服务一样)时,我希望键盘被解除(visibility = GONE),但对话框仍然可见.然而,就我在SO和其他地方的相当广泛的阅读中所看到的,似乎没有办法做到这一点.
如果我将对话框设置为不可取消,那么我不会被onCancel()或onDismiss()通知,因为该对话框不可取消.
如果我将对话框设置为可取消,则会收到通知,但对话框将被取消.
我无法将onKeyListener附加到片段中的对话框,因为它被系统替换,以便片段可以处理对话框的生命周期.
有没有办法做到这一点?或者,为了Fragment系统的目的,是否可以访问完全围起来的关键事件的检测?