解决Flutter中ThemeData.primaryColor在AppBar等组件中不生效

出现场景

闲着没事,将Flutter SDK升级到了2.10.5,结果发现app所有页面的AppBar颜色全变成了默认的蓝色,在MaterialApp中设置的primaryColor颜色没有生效。

MaterialApp(
	theme: ThemeData(
	  primaryColor: const Color(0xFF009AA6),
	),
)

解决方法

通过Flutter的github isseus发现,从Flutter 2.5开始,Flutter团队开始慢慢移除ThemeData.primaryColor属性对所有组件的影响,取而代之的是基于ColorScheme的Color。

MaterialApp(
	theme: ThemeData(
	  primaryColor: const Color(0xFF009AA6),
	  colorScheme: ColorScheme.light().copyWith(primary: const Color(0xFF009AA6)),
	),
)

猜你喜欢

转载自blog.csdn.net/adojayfan/article/details/124327116
今日推荐