文本框被键盘遮挡。

3

我正在开发一个登录页面,用户名和密码文本字段在屏幕中间。问题是当我选择密码文本字段时,键盘会遮挡它。

那么,当TextField获取焦点时如何确保它在视口中可见而不被键盘覆盖? 我希望在打开键盘时页面上移,在关闭键盘时回到正常位置。

已开发的代码(TextField示例):

TextField(
  decoration: InputDecoration(
    labelText: 'Password',
    labelStyle: TextStyle(
       fontFamily: 'Montserrat',
       fontWeight: FontWeight.bold,
       color: Colors.blue
    )    
  ),
  obscureText: true
),

我在GitHub上看到了这个问题,但是没有解决方案:https://github.com/flutter/flutter/issues/19300 我还发现了一些解决方法,但似乎只适用于可滚动页面:https://www.didierboelens.com/2018/04/hint-4-ensure-a-textfield-or-textformfield-is-visible-in-the-viewport-when-has-the-focus/ 提前感谢。

1
你应该添加一个滚动容器。 - diegoveloper
1个回答

1
尝试在 Scaffold 中添加 resizeToAvoidBottomInset

谢谢!问题与列对齐有关。我定义了一个硬编码的对齐方式,当我添加了您的属性建议时,页面返回了一个错误,显示“底部溢出X像素”。因此,这让我看到了页面对齐方式,问题解决了。我不需要您的属性建议,只需要正确的页面对齐方式。 - juan_marti

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接