如何通过颤动列表视图中的索引编号滚动到索引?

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

我有一个列表视图。我想通过相应的索引号转到某个小部件。

我已经尝试使用ScrollController,但是它需要偏移值才能跳转到索引。但是我想通过使用其索引号跳转到小部件。

[请帮助我修复它预先感谢。

flutter flutter-listview
1个回答
0
投票

不幸的是,ListView没有对scrollToIndex()函数的内置方法。您必须开发自己的方法来测量animateTo()jumpTo()元素的偏移量,或者可以从其他帖子中搜索建议的解决方案/插件,例如:

(自2017年以来在flutter/issues/12319上讨论了一般的scrollToIndex问题,但尚无当前计划)]] >>


但是还有另一种不支持scrollToIndex的ListView:

您完全像ListView一样进行设置,并且工作方式相同,不同之处在于,您现在可以访问执行ItemScrollControllerjumpTo({index, alignment})scrollTo({index, alignment, duration, curve})。简化示例:

ItemScrollController _scrollController = ItemScrollController();

ScrollablePositionedList.builder(
  itemScrollController: _scrollController,
  itemCount: _myList.length,
  itemBuilder: (context, index) {
    return _myList[index];
  },
)

_scrollController.scrollTo(index: 150, duration: Duration(seconds: 1));

(请注意,该库是由Google开发的,而不是由Flutter核心团队开发的。)

© www.soinside.com 2019 - 2024. All rights reserved.