- 默认情况下模态的dialog调起虚拟键盘时,虚拟键盘是无法输入的,界面会卡死,非模态dialog则没有这个问题。
- 解决方法就是建立两层dialog,外层dialog作为遮罩,设置opacity为0,内层dialog设置非模态,此时是点击输入框是可以正常调起键盘的。
- 但是注意绑定两层dialog的开启关闭关系。并且keyboard(InputPanel)要放到Overlay层,即设置 parent: Overlay.overlay 属性,否则键盘会在模态遮罩的下方出现。
Dialog{id:modal_dialogmodal: trueclosePolicy: Popup.NoAutoCloseopacity: 0onOpened: {dial_input.open()}Dialog{id:dial_inputparent: Overlay.overlay modal: trueclosePolicy: Popup.NoAutoClose onClosed: {modal_dialog.close()}}
}