我試圖讓用戶能夠在應用程式內更改他們的個人資料圖片。我能夠拉動相機并在顫抖中拍照。但是,影像沒有被保存,并且在 Visual Studio 代碼中,我收到以下錯誤:[ERROR:flutter/lib/ui/ui_dart_state.cc(209)] 未處理的例外:type 'XFile' is not a subtype of type ' PickedFile' 在型別轉換中
這是我正在使用的變數:
PickedFile? _imageFile;
final ImagePicker _picker = ImagePicker();
這是使用它們的功能:
void takePhoto(ImageSource source) async {
final pickedFile = await _picker.pickImage(source: source);
setState(() {
_imageFile = pickedFile as PickedFile;
});
}
另外,我使用的是最新版本的影像選擇器,即 image_picker: ^0.8.4 4。
uj5u.com熱心網友回復:
你可以嘗試改變PickedFile-> XFile ? 因為您使用的是新版本。現在他們使用XFile代替PickedFile.
https://github.com/flutter/plugins/blob/55e246bfa0fd43ff16dc0041084449e606d0fb3c/packages/image_picker/image_picker/lib/image_picker.dart#L203
如果您想繼續使用PickedFile讓更改為getImage
uj5u.com熱心網友回復:
將您的宣告更改為:
XFile _imageFile;
而不是pickfile。并洗掉案例as PickedFile
uj5u.com熱心網友回復:
final ImagePicker _picker = ImagePicker();
Future<File?> takePhoto(ImageSource source) async {
final XFile? image = await _picker.pickImage(source: source);
final File? file = File(image!.path);
return file;
}
問題在于最初使用將其宣告為 PickedFile。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/362672.html
