Flutter - Сделайте фото

Когда я нажимаю на GestureDetector, он открывает диалоговое окно, в котором я могу выбрать, хочу ли я сделать снимок из галереи или сделать снимок самостоятельно (плагин). Но моя проблема в том, что когда я нажимаю одну из кнопок в диалоговом окне, диалоговое окно появляется снова, и только после этого можно сделать снимок с камеры или галереи. Было бы здорово, если бы кто-нибудь помог мне с этой проблемой.

Это ЖестДетектор:

GestureDetector(
              child: Container(
                child: (_image == null
                  ? CircleAvatar(child: Icon(Icons.photo))
                  : FileImage(_image)
                )
              ),
              onTap: () async{
                switch(await dialogs.takePhoto(context)){
                  case "take":
                    getImage(ImageSource.camera);
                    break;
                  case "pick":
                    getImage(ImageSource.gallery);
                    break;
                }
              },
            )

Звонок dialogs.takePhoto(context) здесь заканчивается:

takePhoto(BuildContext context){
  return showDialog(
      context: context,
      barrierDismissible: false,
      builder: (BuildContext ctxt){
        return AlertDialog(
          title: Text("Change Photo"),
          content: Container(
            child: Column(
              children: <Widget>[
                InkWell(
                  child: Text("Take photo"),
                  onTap: ()=> Navigator.pop(ctxt, "take"),
                ),
                InkWell(
                  child: Text("Pick photo"),
                  onTap: ()=> Navigator.pop(ctxt, "pick"),
                ),

              ],
            ),
          ),
          actions: <Widget>[
            FlatButton(
                child: Text(
                  "Abort"
                ),
                onPressed: ()=>Navigator.pop(ctxt),
            )
          ],
        );
      }
  );
}

Это пример: Flutter - Сделайте фото

Заранее спасибо !

РЕШЕНИЕ

Нашел решение именно в тот момент, когда я нажал кнопку отправки. Проблема заключалась в том, что я дважды вызвал функцию выбора изображения XD.

На него можно ответить, нажав отдельно answer this question

CopsOnRoad 25.09.2018 18:45
3
1
3 889
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Нашел решение именно в тот момент, когда я нажал кнопку отправки. Проблема заключалась в том, что я дважды вызвал функцию выбора изображения XD.

Другие вопросы по теме