默认情况下, flutter 会在ListView/GridView/...上添加发光效果,从而在Android手机上过度滚动

我想完全删除此效果或在一个特定的滚动条上删除此效果。
我知道我可以更改ScrollPhysics在Bounce/Clamp之间进行更改。但这实际上并不能消除发光效果。

我能做些什么 ?

dart - 如何删除滚动发光?-LMLPHP

最佳答案

发光效果来自 GlowingOverscrollIndicator 添加的 ScrollBehavior

要消除这种影响,您需要指定一个自定义的ScrollBehavior。为此,只需将应用程序的任何给定部分包装到具有所需ScrollConfiguration ScrollBehavior 中。

以下ScrollBehavior将完全消除发光效果:

class MyBehavior extends ScrollBehavior {
  @override
  Widget buildViewportChrome(
      BuildContext context, Widget child, AxisDirection axisDirection) {
    return child;
  }
}

要删除整个应用程序上的光晕,可以将其添加到MaterialApp下:
MaterialApp(
  builder: (context, child) {
    return ScrollConfiguration(
      behavior: MyBehavior(),
      child: child,
    );
  },
  home: new MyHomePage(),
);

要在特定的ListView上将其删除,请仅包装所需的ListView:
ScrollConfiguration(
  behavior: MyBehavior(),
  child: ListView(
    ...
  ),
)

如果要更改效果,这也是有效的。就像到达滚动 View 的边界时添加淡入淡出一样。

关于dart - 如何删除滚动发光?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51119795/

10-11 22:16
查看更多