Me gustaría insertar una relación de aspecto en la columna. E inserte esta columna en un ListView.
¿Es posible?
Quiero crear un porcentaje con menos información al respecto.
@override
Widget build(BuildContext context) {
return Padding(
padding: EdgeInsets.only(
left: 28,
right: 28,
bottom: 8,
top: 8,
),
child: Container(
height: heightElement,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.all(Radius.circular(16)),
boxShadow: [
BoxShadow(
color: SVConst.circularItemsColors[index].withOpacity(0.5),
spreadRadius: 5,
blurRadius: 7,
offset: Offset(0, 3), // changes position of shadow
),
],
),
child: Column(
children: [
Container(
height: 0.7 * heightElement,
child: Expanded(
child: AspectRatio(
aspectRatio: 1.3,
child: Center(
child: CircularPercentIndicator(
backgroundColor: Colors.white,
radius: 120.0,
lineWidth: 13.0,
percent: (double.parse(percentuage) / 100),
center: Text(
percentuage + "%",
style: TextStyle(
fontWeight: FontWeight.bold, fontSize: 20.0),
),
footer: Container(
child: AutoSizeText(
nameItem,
style: TextStyle(
color: SVConst.circularItemsColors[index],
fontWeight: FontWeight.bold,
fontSize: 17.0),
),
),
circularStrokeCap: CircularStrokeCap.round,
progressColor: SVConst.circularItemsColors[index],
),
),
),
),
),
],
),
),
);
}
pero arroja una excepción.
Intento insertar un AspectRatio en un contenedor con un 70 % de altura respecto al padre, pero no funciona.
¿Tiene alguna sugerencia para mí?
¿Puedes ayudarme por favor?
eliminar su widget ampliado
-CoderUni
27/03/2021 a las 14:26
------------------------------------
Se supone que el widget expandido tiene como padres una Fila, una Columna o un Flex. De ahí la excepción.
Elimine el widget ampliado de AspectRatio.
------------------------------------
height: 0.7 * heightElement,
Esto está mal, debes eliminar la barra de aplicaciones y la altura de la barra de estado para poder obtener el 0,7 por ciento exacto.
Ahora puedes usar 0,6 ya que podemos considerar que el tamaño de la barra de aplicaciones y de la barra de estado puede consumir 0,1.
Entonces tu código debería ser,
height: 0.6 * heightElement,