当用户滚动到列表或TabView的边缘时,结束边缘上会出现一个蓝色的动画圆圈。这叫什么,我怎么改变它的颜色?
juud5qan1#
这是android的滚动物理(ClampingScrollPhysics)。来自源代码和文档:发光颜色已指定为使用[ThemeData. accentColor]。也就是说,当你创建你的App时,最好的做法是指定一个自定义的主题,而不是手动应用颜色。示例:
App
class App extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'My App', theme: ThemeData( brightness: Brightness.light, primarySwatch: Colors.grey, primaryColor: Colors.grey[50], primaryColorBrightness: Brightness.light, //this is what you want accentColor: Colors.orangeAccent[400], accentColorBrightness: Brightness.light, ), home: Home(), ); } }
我喜欢使用这个工具来定义主要的和次要的(flutter中称为强调色),并预览小部件。注:在IO上,物理机制是不同的,允许用户滚动到内容边界之外,但随后将内容弹回到这些边界的边缘(BouncingScrollPhysics)。
uyto3xhc2#
自Flutter v2.3.0-0.1.pre以来,主题变更为https://api.flutter.dev/flutter/material/ThemeData/accentColor.html要设置重音颜色,必须执行类似以下操作
class Themes { static final light = ThemeData( // Colors backgroundColor: Colors.white, primaryColor: MyColors.blue, splashColor: MyColors.blue, cardColor: MyColors.blue, hoverColor: MyColors.blue, highlightColor: MyColors.blue, colorScheme: ColorScheme.light(primary: MyColors.blue), // Fonts fontFamily: 'Inter'); static final lightV2 = light.copyWith( colorScheme: light.colorScheme.copyWith(secondary: MyColors.blue)); }
并在材料应用程序中分配ligthV2
ligthV2
MaterialApp( ... theme: Themes.lightV2 ... )
2条答案
按热度按时间juud5qan1#
这是android的滚动物理(ClampingScrollPhysics)。
来自源代码和文档:
发光颜色已指定为使用[ThemeData. accentColor]。
也就是说,当你创建你的
App
时,最好的做法是指定一个自定义的主题,而不是手动应用颜色。示例:
我喜欢使用这个工具来定义主要的和次要的(flutter中称为强调色),并预览小部件。
注:在IO上,物理机制是不同的,允许用户滚动到内容边界之外,但随后将内容弹回到这些边界的边缘(BouncingScrollPhysics)。
uyto3xhc2#
自Flutter v2.3.0-0.1.pre以来,主题变更为https://api.flutter.dev/flutter/material/ThemeData/accentColor.html
要设置重音颜色,必须执行类似以下操作
并在材料应用程序中分配
ligthV2