Я использую плагин Image Picker для выбора изображения. Я хотел бы перейти на новый экран сразу после выбора изображения, но оно не работает. Я получаю сообщение об ошибке, в котором говорится, что контекст не существует в текущем дереве виджетов.
Ниже приведен мой код.
pickImage(BuildContext context) async {
File pickedImage = await ImagePicker.pickImage(source: ImageSource.camera);
if (pickedImage != null) {
print(pickedImage.path);
if (this.mounted) {
await Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => ViewStory(
localImagePath: pickedImage.path,
),
),
);
}
}
}
Вызовите функцию следующим образом:
IconButton(
onPressed: () => pickImage(context),
icon: Icon(
Icons.camera_alt,
color: CustomColors.primary,
size: 100,
),
),
Ниже приведена ошибка, которую я получаю:
FlutterError (Поиск предка деактивированного виджета небезопасен. На данный момент состояние дерева элементов виджета больше не является стабильным. Чтобы безопасно ссылаться на предка виджета в его методе dispose (), сохраните ссылку на предка, вызвав метод attributeitFromWidgetOfExactType () в виджете didChangeDependencies ().)