¿Por qué a veces se usa child y a veces children?

Pregunta de la clase:
Flutter Widgets: Column
Emiliano Fernández Cervantes

Emiliano Fernández Cervantes

Pregunta
student
hace 5 años

¿Por qué a veces se usa child y a veces children?

4 respuestas
    Diego Alejandro Leguizamon Huertas

    Diego Alejandro Leguizamon Huertas

    student
    hace 5 años

    Hola @emilian20. Entiendo que se coloca dependiendo el tipo de widget que estés utilizando. Ejemplo: En el widget Container solo te permite 1 elemento "Anidado" (Espero utilizar el termino correcto) o hijo:

    Container( margin: EdgeInsets.only( top: 320.0, left: 20.0, right: 18.0 ), child: Text( "Machu Picchu", style: TextStyle( fontSize: 30.0, fontWeight: FontWeight.bold ), textAlign: TextAlign.left, ), ),

    En el caso de widgets como Row o Column que permite "anidar" varios elementos se usa children:

    Row( children: [ Image.asset( "assets/images/astronauta.jpg", fit: BoxFit.cover, ), //Widget 1 Text("Hola Mundo"), //Widget 2 Center( child: Text( "Un nuevo viaje", style: TextStyle( color: Colors.white, fontSize: 20, fontWeight: FontWeight.bold ), ) //Widget 3 ) ], )
    Jose Andres Sulbaran Armas

    Jose Andres Sulbaran Armas

    student
    hace 5 años

    Uno es singular y otro plural, haciendo referencia de que si es singular (CHILD) solo puede contener un Widget y de manera opuesta con el plural (CHILDREN), pudiendo así pasarle más de un Widget. Espero que te resuelva la duda.

    Emiliano Fernández Cervantes

    Emiliano Fernández Cervantes

    student
    hace 5 años

    Muchas gracias!

    Altair Barahona

    Altair Barahona

    student
    hace 5 años

    Si, child espera recibir un único widget lo cual es lógico en el caso de un contenedor, pero le puedes pasar al contenedor un child de columa o fila (column/row). Estos dos tienen como objetivo apilar vertical u horizontalmente VARIOS widgest y por eso es que estos dos últimos tienen propiedad de children y no de child.

Curso de Flutter

Curso de Flutter

Flutter es el framework de Google para desarrollar interfaces móviles nativas en iOS y Android, basado en los principios de Material Design y Cupertino (iOS) tendrás un look and feel totalmente natural en tus aplicaciones. Desarrolla aplicaciones móviles nativas de alta calidad y mucho más rápido usando Flutter.

Curso de Flutter
Curso de Flutter

Curso de Flutter

Flutter es el framework de Google para desarrollar interfaces móviles nativas en iOS y Android, basado en los principios de Material Design y Cupertino (iOS) tendrás un look and feel totalmente natural en tus aplicaciones. Desarrolla aplicaciones móviles nativas de alta calidad y mucho más rápido usando Flutter.