当键盘打开或关闭时,Flutter Page重新加载

时间:2020-03-31 13:19:44

标签: flutter

我正在使用Flutter处理聊天页面,因此页面结构为

Container(
      color: color,
      child: Column(
        children: <Widget>[
          Flexible(
            child: ScrollablePositionedList.builder(
              itemScrollController: _itemScrollController,
              itemPositionsListener: _itemPositionListener,
              initialScrollIndex: _messages.length - 1,
              padding: EdgeInsets.all(8.0),
              reverse: false,
              itemBuilder: (_, int index) => GestureDetector(
                behavior: HitTestBehavior.translucent,
                onTap: () {
                  print("tapped");
                  FocusScope.of(context).requestFocus(new FocusNode());
                },
                child: ChatMessage(
                  message: _messages[index],
                ),
              ),
              itemCount: _messages.length,
            ),
          ),
          Divider(
            height: 1.0,
          ),
          Container(
            padding: EdgeInsets.only(bottom: 32, left: 8, right: 8),
            decoration: new BoxDecoration(
              color: Theme.of(context).cardColor,
            ),
            child: _textComposerWidget(),
          )
        ],
      ),
    );

问题是单击textFrom或键盘打开或关闭重新加载的页面时,我丢失了listViewtextForm()中的所有数据

1 个答案:

答案 0 :(得分:0)

需要更多信息,似乎您正在使用StatelessWidget而不是有状态