Flutter开发 - 避免页面底部的Widget被键盘顶起

1,265 阅读1分钟

很早就想写这个问题的,一直忘记了,最近翻阅代码,突然看到这个问题,所以就拿出来和大家说说,分享一下经验。

我写的页面底部有一个Widget,就类似于评论的点赞和收藏的组件,页面的中间有一个输入框,很自然的,当我点击输入框的时候,底部的Widget就被键盘顶起来了。可我并不希望被顶起来,那该怎么办呢?

resizeToAvoidBottomInset

这个属性默认为true,设置为false就可以避免被键盘顶起,还有一些是导致图片变形的情况,都可以使用这个。

使用方法是:

  Widget build(BuildContext context) {
    return Scaffold(

        ///避免底部被弹上来
        resizeToAvoidBottomInset: false,
        backgroundColor: Colors.white,
        appBar: PreferredSize(
          preferredSize: Size.fromHeight(ThemeUI.headerHeight),
          child: SafeArea(child: _buildSearchBox()),
        ),
        body: _buildUI());
  }