如何将展开图块的列表视图构建器自动滚动到Flutter中的列表末尾?

问题描述 投票:0回答:1

我正在用(6 Nos)的可扩展图块实现列表视图构建器。我只想显示列表视图的末尾。我在单击第五个可扩展图块时会遇到问题,该细节应隐藏在屏幕下方。我只想自动显示而无需滚动。但是我无法使用滚动动画,因为可扩展的磁贴没有任何单击属性。我需要一些帮助吗?

flutter flutter-layout
1个回答
0
投票

ExpansionTile具有用于回调的onExpansionChanged属性。您可以将此属性设置为这样的回调,以滚动到底部:

onListExpansionChanged(bool expanded) { //returns if it was expanded (true) or collapsed (false)
    if (expanded) {
      _scrollController.animateTo(_scrollController.position.maxScrollExtent, duration: Duration(milliseconds: 500), curve: Curves.easeIn);
    }
  }

当然,为此,您需要设置_scrollController:

ScrollController _scrollController;

@override
  void initState() {
    super.initState();
    _scrollController = ScrollController();
  }

并在您的ListView上使用它:

...
ListView(
  controller: _scrollController,
...

...
ListView.builder(
  controller: _scrollController,
...
© www.soinside.com 2019 - 2024. All rights reserved.