Порхание простого содержимого диалогового окна, уходящего с экрана

#flutter #flutter-layout #flutter-widget #flutter-dialog

Вопрос:

У меня есть диалог, я пытаюсь обернуть содержимое в диалог, однако у меня несколько проблем

1)Использование wrap не гарантирует, что содержимое находится в диалоговом окне предупреждения

2)выравнивание содержимого не является центральным.

Я перепробовал все возможные варианты выравнивания, и это не работает. При использовании растягивания столбца виджета я подумал, что, возможно, будет работать использование переноса . Но это не так. Есть какое-нибудь решение?

с оберткой

С Колонкой

с колонкой

With Colored Container in a wrap to check the issue and with size box with defined width of display * 0.25 so that text does not go away from screen

с контейнером в обертке

Код

  showDialog(
      barrierDismissible: false,
      barrierColor: Colors.black26,
      context: context,
      builder: (context) {
        return StatefulBuilder(
          builder: (context, setState) {
            return AlertDialog(
              contentPadding: EdgeInsets.all(20),
              content: Wrap(
                direction: Axis.vertical,
                alignment: WrapAlignment.spaceAround,
                runAlignment: WrapAlignment.center,
                crossAxisAlignment: WrapCrossAlignment.center,
                runSpacing: 10,
                children: [
                  Lottie.asset(
                      Constants.location_anim,
                      height: displaySize.height * 0.25,
                      repeat: true,
                      reverse: true,
                      animate: true
                  ),
                  Text(locationMsgTextView,softWrap: true,),
                  getLocationDeniedWidget(context,state),
                ],
              ),
              elevation: 3,
              shape: RoundedRectangleBorder(
                  borderRadius: BorderRadius.circular(20)),
            );
          },
        );
      });
 

Комментарии:

1. Используйте виджет центра со столбцом, имеющим поперечное смещение: центр

2. Одна из проблем — виджет «Столбец» растягивает представление сверху и снизу. Теперь диалоговое окно выглядит как полномасштабное диалоговое окно

3. @AfridiKayal пожалуйста, проверьте прикрепленные изображения с вопросом

4. Попробуйте установить минимальное значение mainAxisSize столбца.

5. Хорошо, центр, должно быть, занимает место. Удалите центр и просто используйте столбец вместо строки с главной осью в качестве минимальной и перекрестной осью в качестве центра. Я протестировал его в дартпаде, и он должен работать