Hacemos una verificación completa cada posts de nuestra web con el objetivo de enseñarte en todo momento la información más veraz y actualizada.
Solución:
Personalizar widget
Edite el widget en sí: bajo el AlertDialog
hay un widget de ButtonBar donde puedes usar alignment: MainAxisAlignment.spaceBetween
para alinear los botones correctamente. Consulte esta respuesta para ver un ejemplo de un widget AlertDialog personalizado.
Fila de botones propia
También puede quitar los botones debajo actions
y añadir una propia costumbre Row
con RaisedButtons en él, de alguna manera así:
Row (
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
RaisedButton(), // button 1
RaisedButton(), // button 2
]
)
En su caso, podría agregar una Columna alrededor de la Fila en content
y allí agregue su Fila existente y la modificada que creó a partir del ejemplo anterior.
Mover botones al contenido es una buena solución.
showDialog(
context: context,
barrierDismissible: false,
builder: (BuildContext context)
return AlertDialog(
title: Center(child: Text('Alert')),
content: Column(
mainAxisSize: MainAxisSize.min,
children: [
Container(
child: Text(
"message",
textAlign: TextAlign.center,
style: TextStyle(
color: Colors.red,
),
),
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
FlatButton(
child: Text('Yes'),
onPressed: ()
Navigator.of(context).pop();
),
FlatButton(
child: Text('No'),
onPressed: ()
Navigator.of(context).pop();
)
])
],
),
);
);
No agregue el botón en comportamiento de AlertDialog. Como puedes ver.
_onSubmit(message)
if (message.isNotEmpty)
showDialog(
context: context,
barrierDismissible: false,
builder: (BuildContext context)
return AlertDialog(
title: Center(child: Text('Alert')),
content: Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children : [
Expanded(
child: Text(
message,
textAlign: TextAlign.center,
style: TextStyle(
color: Colors.red,
),
),
),
FlatButton(
child: Text('Cancel'),
onPressed: ()
Navigator.of(context).pop();
),
FlatButton(
child: Text('Ok'),
onPressed: ()
_inputTextController.clear();
Navigator.of(context).pop();
)
],
),
);
,
);