TransWikia.com

¿crear lista de botones del mismo tamaño en flutter?

Stack Overflow en español Asked by Harvey66 on December 21, 2020

estoy tratando de crear un menú de opciones con botones he imágenes, el problema es que cada botón tiene un distinto tamaño y no se como puedo hacer que todos sean iguales,asi es mi codigo

Widget _opciones(BuildContext context) {
Stack(
  children: <Widget>[
    Positioned(
        child: Padding(
      padding: const EdgeInsets.all(1.0),
      child: Column(
        mainAxisAlignment: MainAxisAlignment.start,
        children: <Widget>[
          ListTile(
            title: Text("Menu de opnciones - $name"),
          ),
          Column(
            children: <Widget>[
              RaisedButton(
                  elevation: 0.0,
                  shape: new RoundedRectangleBorder(
                      borderRadius: new BorderRadius.circular(20.0)),
                  padding: const EdgeInsets.only(
                      top: 8, bottom: 8, left: 40, right: 40),
                  onPressed: () {
                    final route =
                        MaterialPageRoute(builder: (context) => Aduanas());
                    Navigator.push(context, route);
                  },
                  child: new SizedBox(
                    child: Column(
                      children: <Widget>[],
                    ),
                  ),
                  textColor: Colors.white,
                  color: Colors.blue
           ),
              Padding(
                padding: const EdgeInsets.only(
                    left: 0.0, right: 0.0, top: 15.0, bottom: 8.0),
                child: new RaisedButton(
                    elevation: 0.0,
                    shape: new RoundedRectangleBorder(
                        borderRadius: new BorderRadius.circular(20.0)),
                    padding: EdgeInsets.only(
                        top: 7.0, bottom: 7.0, right: 40.0, left: 7.0),
                    onPressed: () {
                      final route = MaterialPageRoute(
                          builder: (context) => UltimaMilla());
                      Navigator.push(context, route);
                    },
                    child: new Row(
                      mainAxisSize: MainAxisSize.min,
                      children: <Widget>[
                        new Image.asset('assets/img/camion.png',
                            height: 40.0, width: 40.0),
                        Padding(
                            padding: EdgeInsets.only(left: 10.0),
                            child: new Text(
                              "Ultima Milla",
                              style: TextStyle(
                                  fontWeight: FontWeight.bold,
                                  fontSize: 25.0),
                            ))
                      ],
                    ),
                    textColor: Colors.white,
                    color: Colors.blue),
                ),
              ),
            ],
          ),
          Image(
            image: AssetImage("assets/img/logoCelular.png"),
          ),
        ],
      ),
    ))
  ],
);

lo se es un poco confuso, ahí solo hay dos botones, el de abajo dentro de un padding para que se aleje del primero,solo quiero una lista de botones del mismo tamaño con una imagen, aunque me gustaría que la imagen se quedara fija a la izquierda, pero ahora lo importante son los botones , me falta hacer que sean iguales,no soy muy bueno con el diseño todavía, si tienen información que me ayude a resolverlo seria de mucha ayuda

One Answer

Simplemente usa SizedBox englobando cada boton y en su parametro height especifica los pixeles.

Tal que asi

SizedBox(
height:20,
child:RaisedButton( .......)
)

Respecto a la alineacion usa Align() englobando al container o Row o Boton (dado que no se visaulmente como se ve tu actividad) que englobe a tu imagen y texto, de la misma forma que mostra con el SizedBox y usa su parametro alignment: Alignment.left, para poner ese item a la izquierda.

Correct answer by Shockz on December 21, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP