关于Flutter开发的输入法挡住输入框的问题[复制链接]

请问下有没有人遇到用Flutter仿微信实现一个聊天的界面,上面是聊天信息List,底下是一个输入框,当输入法弹出的时候会挡住输入框的问题呢?

尝试过通过SingleChildScrollView包裹ListView和TextFormField还是一样会给输入法挡住,也不知道是什么原因,需要如何解决,希望有大神帮帮忙。下面是我实现build的一些简单的代码:

@override
Widget build(BuildContext context) {

return Scaffold(
  appBar: AppBar(
    title: Text("聊天"),
    backgroundColor: Colors.blue,
    centerTitle: true,
  ),
  resizeToAvoidBottomInset: false,
  resizeToAvoidBottomPadding: false,
  body: SafeArea(
      top: false,
      bottom: false,
      child:SingleChildScrollView(
        physics: BouncingScrollPhysics(),
        padding: const EdgeInsets.symmetric(horizontal: 16.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.stretch,
          children: <Widget>[

// Expanded(
// flex: 1,
// child:,
// ),

            ListView.builder(
                shrinkWrap: true,
                physics: new NeverScrollableScrollPhysics(),
                itemCount: list.length,
                itemBuilder: (BuildContext context, int index) {
                  return Container(
                    height: 40,
                    padding: EdgeInsets.all(10),
                    child: Text(list[index]),
                  );
                }),
            TextFormField(
              decoration: const InputDecoration(
                border: const UnderlineInputBorder(),
                filled: true,
                icon: const Icon(Icons.person),
                hintText: 'Enter your first name',
                labelText: 'First name *',
              ),
              onSaved: (String value) {
                //TODO
              },
              controller: _firstNameController,
            ),

// getFooterWidget(context),

          ],
        ),
      )),
);

}
}

吉原拉面 440查看 · 0回复 · 2019-12-10 14:00 有用(0
共0个回答
需要登入后才可以评论 登录 | 立即注册