【问题标题】:How to Save set image of PickedFile type to a image in Flutter?如何将 PickedFile 类型的集合图像保存到 Flutter 中的图像?
【发布时间】:2020-06-01 09:02:31
【问题描述】:

我想设置从摄像头获取图像并将其设置为以下代码:

image: DecorationImage(image: FileImage(file),

所以我这样做了:

File file = await ImagePicker.pickImage(
  source: ImageSource.camera,
);

现在上面的代码现在可以正常工作,但是'pickImage'已被弃用,我们应该使用 imagePicker.getImage() 方法。

所以我改用了 imagePicker.getImage():

PickedFile file = await ImagePicker().getImage(
  source: ImageSource.camera,
);

但是当我尝试将此文件设置为以下图像类型时,它不起作用

image: DecorationImage(image: FileImage(file),)

如何解决这个问题?

【问题讨论】:

  • final pickedFile = await _picker.getImage(...); final File file = File(pickedFile.path); 然后... image: DecorationImage(image: FileImage(file),)

标签: flutter dart


【解决方案1】:

你需要使用拾取文件的路径属性

image: DecorationImage(image: FileImage(File(file.path)),)

【讨论】:

    【解决方案2】:

    如果有人可能会遇到类似的问题

    从 pickImage 更改为 getImage 并且仍然需要一个 File。

    PickedFile selectedFile = await ImagePicker().getImage(source: source);
    File selected = File(selectedFile.path);
    

    【讨论】:

      【解决方案3】:

      我遇到了类似的问题

      await ImagePicker.pickImage( source: ImageSource.camera, );

      已弃用,我必须使用

      await ImagePicker().getImage( source: ImageSource.camera, );

      但是当我想保存它时出现了问题, 因此,如果有人遇到问题,我会使用此 hack

      final savedImage = File(imageFile.path).copy('${appDir.path}/$fileName');

      这是我的代码的一部分...

      【讨论】:

        【解决方案4】:

        PickedFile 到文件 如果您的应用需要 dart:io File 对象来操作,您可以将 PickedFile 转换为 File,如下所示:

        final pickedFile = await _picker.getImage(...);
        
        final File file = File(pickedFile.path);
        

        【讨论】:

          猜你喜欢
          • 2020-09-14
          • 2021-11-08
          • 1970-01-01
          • 2017-02-12
          • 1970-01-01
          • 1970-01-01
          • 2020-12-08
          • 2018-10-23
          • 1970-01-01
          相关资源
          最近更新 更多