Я пытаюсь сделать страницу загрузки следующим образом:
И я хочу, чтобы у изображения/видео был валидатор, такой как ошибка TextFormField, или я хотел бы сообщить, что изображение пусто и не может быть загружено.
Решение проблемы
По умолчанию поле Image Picker не является элементом формы. Вы можете выбрать плагин, чтобы сделать это для вашего приложения. Здесь я добавляю один. Включите его, и это даст вам возможность проверить выбранное изображение в соответствии с вашими требованиями.
https://pub.dev/packages/image_picker_form_field
Вам нужно будет включить его в pubspec.yaml, и вы готовы использовать предоставляемый им виджет. Просто используйте это, как показано ниже:
ImagePickerFormField(
child: Container(
height: 40,
child: Center(child: Text("Select Photo")),
width: double.infinity,
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(8)),
border: Border.all(
color: Theme.of(context).disabledColor, width: 1)),
),
previewEnabled: true,
autovalidate: true,
context: context,
onSaved: (File value) {
print("on saved called");
},
validator: (File value) {
if (value == null)
return "Please select a photo!";
else return null; },
initialValue: null, //File("some source")
)
Комментариев нет:
Отправить комментарий