问题描述
我们从5.12.9迁移到5.15.2,现在我们的任何输入或文本字段在活动焦点上都看不到软的Android键盘(不会弹出)。是错误(QTBUG-88069)还是存在一些解决方法?
遵循Stackoverflow solution或setting/clearing window flags对我不起作用。
解决方法
所以问题很明显,因为以下几行:
#ifdef Q_OS_LINUX
qputenv("QT_IM_MODULE",QByteArray("qtvirtualkeyboard"));
#endif
改为
#if defined(Q_OS_LINUX) && !defined(Q_OS_ANDROID)
qputenv("QT_IM_MODULE",QByteArray("qtvirtualkeyboard"));
#endif
在 Android 上,两个常量都被定义为:Q_OS_LINUX
和 Q_OS_ANDROID
。瞧:Android 键盘可以工作了! :)