我有很多数据要发送到我的后台。我为所有需要的数据创建了一个类。我将其命名为service_data
,它包含
class ServiceData {
File? fileBukuServis;
File? fileSTNK;
File? fileOwnerManual;
}
之后,我想从相机中拾取图像并将其设置为上面的数据。我使用image_picker
包,并使用此函数设置数据
class _DetailCarState extends State<DetailCar> {
ServiceData serviceData = ServiceData();
final ImagePicker _picker = ImagePicker();
Future pickImage({File? imageData, html.File? htmlImageData}) async {
final XFile? image =
await _picker.pickImage(source: ImageSource.camera, imageQuality: 50);
if (image != null) {
setState(() {
imageData = File(image.path);
});
}
if (kDebugMode) {
print(serviceData.fileBukuServis!.path);
}
}
}
我用这个来选择图像
ElevatedButton(
style: ButtonStyle(
backgroundColor: MaterialStateProperty.all(
Colors.red[800])),
onPressed: () {
if (kIsWeb) {
pickImage(htmlImageData: serviceData.htmlfileBukuServis);
}
pickImage(imageData: serviceData.fileBukuServis);
},
child: const Text('Ambil gambar'))
当我从摄像头拍摄图像时,serviceData
中的fileBukuServis
总是空的。如何设置imagepicker中的数据?
1条答案
按热度按时间vngu2lb81#
在用于拾取图像的方法中,只需修改局部变量
imageData
并不返回任何内容。您可以直接更改
serviceData.fileBukuServis
变量。下面是修改后的代码:另外,您的
ServiceData
类没有htmlfileBukuServis
字段。确保将其添加到代码中。