Flutter/3 строки в одном контейнере или AlertDialog

Я пытаюсь создать диалоговое окно предупреждений с окном навигации. Должно быть 3 строки с разными IconButtons для навигации на другом сайте. К сожалению, я новичок во Flutter и не знаю, как сделать еще 2 ряда. Кто-нибудь может мне помочь? Возможно ли это сделать? Я имею в виду, что я не могу добавить больше детей или могу? Я не знаю, должен ли я разделить его на 3 AlertDialogs или это глупо?

Это был мой макет для первого ряда

Вот как это должно выглядеть, но с 3 строками, а не с двумя, так что код, который у меня есть прямо сейчас, можно скопировать, чтобы сделать 3 идентичных строки параллельными.

Код:

      import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';

void popup(BuildContext context) {
  var alertDialog = AlertDialog(
    backgroundColor: Color(0xffb09c84),
    title: Text(''),
    content: Container(
      constraints: BoxConstraints(minWidth: 0, maxWidth: 300, maxHeight: 600),
      padding: EdgeInsets.all(0),
      width: 300.0,
      height: 560.0,
      child: Row(
        mainAxisAlignment: MainAxisAlignment.spaceBetween,
        children: [
          Column(
            children: [
              IconButton(
                icon: FaIcon(
                  FontAwesomeIcons.newspaper,
                  size: 44.0,
                ),
                onPressed: () {},
              ),
              SizedBox(height: 2.0),
              Container(
                child: Text(
                  "       Zeitung",
                  style: TextStyle(
                    fontSize: 14.0,
                  ),
                ),
              ),
            ],
          ),
          Column(
            children: [
              IconButton(
                icon: FaIcon(
                  FontAwesomeIcons.envelope,
                  size: 44.0,
                ),
                onPressed: () {},
              ),
              SizedBox(height: 2.0),
              Container(
                child: Text(
                  "    News",
                  textAlign: TextAlign.center,
                  style: TextStyle(
                    fontSize: 14.0,
                  ),
                ),
              ),
            ],
          ),
          Column(
            children: [
              IconButton(
                icon: FaIcon(
                  FontAwesomeIcons.creativeCommonsSampling,
                  color: Colors.black,
                  size: 44.0,
                ),
                onPressed: () {},
              ),
              SizedBox(
                height: 3.0,
              ),
              Container(
                child: Text(
                  "   Vertretung",
                  style: TextStyle(
                    fontSize: 14.0,
                  ),
                ),
              ),
            ],
          ),
        ],
      ),
    ),
  );

  showDialog(context: context, builder: (BuildContext context) => alertDialog);
}

 

1 ответ

Это ваш код сейчас:

       Container(
      constraints: BoxConstraints(minWidth: 0, maxWidth: 300, maxHeight: 600),
      padding: EdgeInsets.all(0),
      width: 300.0,
      height: 560.0,
      child: //Row(..the rest you want to copy"

Добавьте столбец перед этой строкой и скопируйте свой Rowтри раза:

       Container(
      constraints: BoxConstraints(minWidth: 0, maxWidth: 300, maxHeight: 600),
      padding: EdgeInsets.all(0),
      width: 300.0,
      height: 560.0,
      child: Column( children: [ 
        Row1("..the rest you want to copy"),
        Row2("..the rest you want to copy"),
        Row3("..the rest you want to copy)" 
     ]), //Column
   ), //Container
Другие вопросы по тегам