Flutter 键盘使 textField 隐藏

时间:2021-07-30 13:07:56

标签: flutter

我遇到了一个问题,当点击文本字段时,颤动键盘会打开,它几乎覆盖了整个屏幕,包括文本字段。

我已经尝试了我在网上看到的所有解决方案:

  • 将小部件包装在 SingleScrollView 中
  • 约束:BoxConstraints(maxHeight: MediaQuery.of(context).size.height),
  • 将 Scaffold 设置为不调整底部的大小

仍然,键盘隐藏了 textField。

这就是我所做的:

return SingleChildScrollView(
      child: Column(
        crossAxisAlignment: CrossAxisAlignment.start,
        children: [
          [....................]
          Padding(
            padding: const EdgeInsets.all(8.0),
            child: ConstrainedBox(
              constraints: BoxConstraints(maxHeight: MediaQuery.of(context).size.height/2),
              child: TextField(
                style: TextStyle(
                  color: TheBaseColors.lightRed,
                  fontWeight: FontWeight.bold,
                  fontFamily: 'FoundersGrotesqueXCond',
                ),
                onTap: () {},
                textCapitalization: TextCapitalization.characters,
                decoration: InputDecoration(
                  hintText: 'OCCUPATION',
                  hintStyle: TextStyle(fontSize: 20.0, color: Colors.blueGrey),
                  enabledBorder: UnderlineInputBorder(
                    borderSide: BorderSide(color: TheBaseColors.lightRed),
                  ),
                  focusedBorder: UnderlineInputBorder(
                    borderSide: BorderSide(color: TheBaseColors.lightRed),
                  ),
                  border: UnderlineInputBorder(
                    borderSide: BorderSide(color: TheBaseColors.lightRed),
                  ),
                ),
              ),
            ),
          ),
        ],
      ),
    );
  }
}

1 个答案:

答案 0 :(得分:0)

尝试将您的独生子女包裹在脚手架中,并将属性 resizeToAvoidBottomInset 设置为 true。因此,当您点击此页面中的某些内容时,键盘会将您的页面向上推,以免覆盖您的页面。