Flutter:键盘在Android中显示为白色框



在一个Flutter应用程序中,当我在Android上运行时,点击现场时,我在某个地方有一个TextField要输入一些东西,键盘不显示,而是一个白盒与键盘相同的区域显示。

我面临的问题是在所有有键盘的应用程序内,我的意思是不只是TextField小部件,我也面临着它与TextFormField和问题不存在的IOS.

快速建议:

确保硬件加速在android项目中启用功能。

AndroidManifest.xml文件中,检查是否将属性android:hardwareAccelerated设置为true,如下所示:

<application>
<activity
...
android:hardwareAccelerated="false"
... >
...
</activity>
</application>

注意:如果你没有看到它,而你的Android API >= 14,那么它是默认启用的。

如果未启用,则启用它,然后停止应用&重新运行,检查问题是否解决。


细节:

既然你提到这个问题只存在于Android,那么它可能与硬件加速功能密切相关,这里是关于它的简要描述:

从Android 3.0 (API级别11)开始,Android 2D渲染管道支持硬件加速,这意味着在视图画布上执行的所有绘图操作都使用GPU。由于启用硬件加速所需的资源增加,您的应用程序将消耗更多的RAM。

禁用Hardware Acceleration可能会导致以下问题:不可见元素(可能是您的情况),异常,或错误渲染像素,这就是为什么我猜这是问题。