如何等待直到函数执行

时间:2019-05-19 15:53:20

标签: dart flutter

我想等到从相机中获取照片后,再执行addProduct功能,然后才能拍摄照片。 我要如何等待直到选择图像?

编辑:该函数第二次工作完美,因为从我第一次执行该函数起_imageFile中就有一个文件。因此请确保它是异步问题

void _submitInfo(Function addProduct, Function getUserLocation,
      ConnectedProuctModel model) async {
    final LocationData _locationData = await getUserLocation();
    final address = _locationData.address;
    print(_locationData);
   await _openCamera();


print(_imageFile);
    addProduct(address, _imageFile, _locationData).then((_) {
      Navigator.push(
        context,
        MaterialPageRoute(builder: (context) => Products(model)),
      );
    });

第二:

 void _openCamera()  {
    ImagePicker.pickImage(source: ImageSource.camera, maxWidth: 400.0)
        .then((File image) {
setState(() {
        _imageFile = image;
      });    });
  }
}

这是错误:

  

E / flutter(12098):[错误:flutter / lib / ui / ui_dart_state.cc(148)]   未处理的异常:NoSuchMethodError:调用getter“路径”   在null上。 E /颤振(12098):接收方:空E /颤振(12098):已尝试   调用:路径

0 个答案:

没有答案