欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

《Flutter 控件大全》第十八个:BackdropFilter 和 ImageFilter

程序员文章站 2022-05-30 18:32:48
...
  • 如果你对Flutter还有疑问或者技术方面的疑惑,欢迎加入Flutter交流群(微信:laomengit)。
  • 同时也欢迎关注我的Flutter公众号【老孟程序员】,公众号首发Flutter的相关内容。
  • Flutter地址:http://laomengit.com 里面包含160多个组件的详细用法。

使用BackdropFilter和ImageFilter可以将图片模糊处理。

基本用法如下:

Stack(
  alignment: Alignment.center,
  children: <Widget>[
    Container(
      width: 300,
      height: 400,
      child: Image.asset('images/1.png'),
    ),
    BackdropFilter(
      filter: ImageFilter.blur(sigmaX: 5.0,sigmaY: 5.0),
      child: Center(
        child: Container(
          color: Colors.red.withOpacity(0),
        ),
      ),
    )
  ],
)

效果如下:
《Flutter 控件大全》第十八个:BackdropFilter 和 ImageFilter

BackdropFilter不仅可以模糊图片,还可以模糊任何组件,BackdropFilter只处理它下面的控件,child参数的组件不模糊处理,如果想在模糊图片的显示文字,只需修改如下:

BackdropFilter(
  filter: ImageFilter.blur(sigmaX: 5.0,sigmaY: 5.0),
  child: Center(
    child: Container(
      color: Colors.red.withOpacity(0),
      child: Text('老孟,一枚有态度的程序员',style: TextStyle(color: Colors.blue),),
    ),
  ),
)

效果如下:

《Flutter 控件大全》第十八个:BackdropFilter 和 ImageFilter