如何装饰Image.file

时间:2018-10-03 07:20:02

标签: dart flutter

我想使文件图像模糊,并在其中添加半径。

这是我的代码:

BackdropFilter(
        filter: new ImageFilter.blur(sigmaX: 10.0, sigmaY: 10.0),
        child: new Container(
          width: width * 0.55,
          height: height * 0.70,
          decoration: new BoxDecoration(

            //this is not accepted becuse Image.file is not ImageProvider
            image: new DecorationImage(
                image: new Image.file(new File(messageSnapshot.value['file'])),
                fit: BoxFit.cover
            ),

            borderRadius: new BorderRadius.all(new Radius.circular(10.0)),
          ),
          child: Center(child: new CircularProgressIndicator(backgroundColor: Colors.deepPurpleAccent,)),
        ),
      )

如何使用Image.file小部件实现此目标?

2 个答案:

答案 0 :(得分:5)

使用Image.File图片提供程序代替FileImage小部件

new DecorationImage(
  image: new FileImage(yourFile),
  fit: BoxFit.cover,
);

答案 1 :(得分:0)

以防万一有人想为图片使用条件,这可能会起作用:

decoration: BoxDecoration(
  borderRadius: BorderRadius.circular(50.0),
    color: Colors.grey,
    image: DecorationImage(
    image: _image == null
    ? AssetImage('A_DEFAULT_IMAGE_PATH')
    : FileImage(YOUR_FILE),
    fit: BoxFit.cover
   ),
),