在flutter中调用setState时如何禁用SingleChildScrollView上的滚动回顶部

时间:2018-07-19 06:14:08

标签: forms scroll flutter

我有一个SingleChildScrollView小部件,其子级是Flutter中的Form小部件。每当我对表单中的单选按钮或开关进行一些更改并调用setState()方法时,视图就会滚动到顶部。 如何避免这种行为?

1 个答案:

答案 0 :(得分:0)

我建议在构造SingleChildScrollView小部件时通过自定义ScrollController。

ScrollController具有一个名为“ keepScrollOffset”的属性,您需要将其设置为true。

摘自https://docs.flutter.io/flutter/widgets/ScrollController-class.html上的文档

keepScrollOffset→布尔 每次滚动完成时,请使用PageStorage保存当前滚动偏移量,如果重新创建了此控制器的可滚动内容,则将其恢复。 [...] 最终