2020年是多灾多难的一年,让我们在清明这一天,通过把首页置灰的形式向逝去的人们表达缅怀之情~
上Demo效果把:
怎么实现的呢?
就是用ColorFiltered组件,用ColorFiltered组件包裹我们的MaterialApp就行了。代码如下:
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ColorFiltered(
colorFilter: ColorFilter.mode(Colors.grey, BlendMode.color),
child: MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(title: 'Flutter Demo Home Page'),
));
}
}
[ColorFiltered] Applies a [ColorFilter] to its child.也就是说colorFiltered会给自己的子组件添加一个滤镜效果。
斯人已逝,生者坚强,怎么恢复颜色呢?
聪明的你一定想到了,就是把colorFilter颜色设置为透明
colorFilter: ColorFilter.mode(Colors.transparent, BlendMode.color),
当然通过服务器下发的方式,更加灵活的控制页面颜色滤镜,你一定也会了~