Flutter para principiantes
Hola a todos, estoy escribiendo este art铆culo sobre Flutter para principiantes para ayudar a otros desarrolladores a comenzar a usar Flutter f谩cilmente. En este art铆culo, vamos a utilizar algunos de los widgets b谩sicos y m谩s utilizados de flutter para dise帽ar las interfaces de usuario b谩sicas, por lo que no vamos a entrar en todos los widgets, sino solo en algunos de los m谩s utilizados.
Entonces, para comenzar con Flutter, necesitamos conocer los conceptos b谩sicos de Dart.
Suponiendo que ya haya aprendido algunos de los conceptos b谩sicos de dart y flutter, comencemos con este art铆culo.
Es posible que hayas escuchado en alguna parte que todo en flutter es un widget.
Entonces, ¿qu茅 es un widget en flutter?
Widget es b谩sicamente el bloque de construcci贸n de la aplicaci贸n flutter. Es una descripci贸n de una parte de la interfaz de usuario, pero no se limita a ella. Un widget puede mostrar algo, puede ayudar a definir el dise帽o, puede ayudar con el dise帽o, puede manejar la interacci贸n del usuario, etc. B谩sicamente, la acumulaci贸n de diferentes tipos de widgets en un conjunto fijo de reglas constituye la aplicaci贸n flutter. Por lo tanto, el t茅rmino, "todo es widget en flutter".
Scaffold
Scaffold es un widget que se utiliza para implementar la estructura b谩sica de dise帽o de la interfaz de usuario del dise帽o de materiales . Este es uno de los widgets m谩s importantes de Flutter, ya que contiene el dise帽o principal de la aplicaci贸n. Este widget puede ocupar toda la pantalla del dispositivo. En otras palabras, podemos decir que es el principal responsable de crear una base para la pantalla de la aplicaci贸n en la que se mantienen y representan los widgets secundarios. Proporciona muchos widgets para mostrar Drawer , SnackBar , BottomNavigationBar , AppBar , FloatingActionButton y muchos m谩s. Este widget b谩sicamente ayuda a crear el dise帽o b谩sico que debe tener una aplicaci贸n material.
Andamio
Area segura o SafeArea
Los widgets de SafeArea en flutter se usan para no superponerlos con los elementos del m贸vil, como el estado de la bater铆a, el indicador wifi y otras cosas por el estilo. SafeArea le ayuda a evitar esta superposici贸n de la barra de estado.
Area segura
Container
Este es un widget principal que puede contener m煤ltiples widgets secundarios y administrarlos de manera eficiente a trav茅s del ancho, la altura, el relleno, el color de fondo, etc. Un widget de contenedor es lo mismo que la etiqueta <div> en html. Combina la pintura, el posicionamiento y el tama帽o comunes de los widgets secundarios. Tambi茅n es una clase para almacenar uno o m谩s widgets y posicionarlos en la pantalla seg煤n nuestras necesidades. En general, es similar a una caja para almacenar contenido. Permite muchos atributos al usuario para decorar sus widgets secundarios, como el uso de margin , que separa el contenedor con otros contenidos.
Row o Fila
Row es uno de los widgets m谩s esenciales en Flutter que permite a los desarrolladores alinear “children” (ni帽os) horizontalmente seg煤n nuestras necesidades.
Column o columna
Tambi茅n es uno de los widgets m谩s esenciales en Flutter que permite a los desarrolladores alinear ni帽os verticalmente seg煤n nuestras necesidades.
Expanded el Expandido
Este widget en flutter ayuda a ocupar todo el espacio restante dentro de los widgets de Fila o Columna . Con su propiedad flexible , puede controlar cu谩nto espacio debe ocupar el widget secundario.
Ejemplo ampliado 1
Ejemplo ampliado 2
Wrap el Envolvedor
A menudo recibimos una advertencia de desbordamiento al alinear los widgets en flutter. Este error ocurre cuando el contenido dentro de una Columna/Fila excede el tama帽o m谩ximo permitido. Wrap le permite colocar widgets en una nueva l铆nea cuando superan el tama帽o m谩ximo de la pantalla.
Envolver
BoxDecoration o Decoraci贸n de caja:
Este widget describe b谩sicamente c贸mo se debe pintar un cuadro en la pantalla. La forma de la caja puede ser rectangular, cuadrada o circular. Viene con un mont贸n de propiedades, podemos agregar una imagen dentro, agregar un radio al borde seg煤n el tama帽o del radio y proyectar una sombra en el cuadro.
Stack el que apila uno encima de otro
Este widget en flutter ayuda a apilar widgets uno encima del otro. Al usar el widget Positioned , podemos posicionar elementos dentro de la pila. Su uso es similar al valor absoluto de la propiedad display css.
Pila
SizedBox
Tama帽o de la caja
El widget SizedBox se usa cuando necesita crear un cuadro con un tama帽o espec铆fico (ancho / alto). Este widget permite especificar la dimensi贸n que debe tener el elemento hijo. Tambi茅n puede especificar una dimensi贸n infinita ( double.infinite ) si desea que ese elemento secundario ocupe todo el tama帽o permitido. Otro uso de SizedBox es cuando necesita algo de espacio entre los elementos Columna / Fila.
Tama帽o de la caja
PageView o Vista de pagina
Este widget ayuda a crear una lista desplazable de p谩ginas. Tambi茅n puede decidir la orientaci贸n de desplazamiento con la propiedad scrollDirection . Tambi茅n tiene muchas otras propiedades 煤tiles como pageSnapping, scrollPhysics, etc. que ayudan a personalizar la transici贸n de las p谩ginas.
Ejemplo de vista de p谩gina
Snack-bar / InkWell
SnackBar es un widget que muestra un mensaje r谩pido dentro de la aplicaci贸n que indica brevemente al usuario cu谩ndo sucedi贸 algo.
Tintero
InkWell responde a la acci贸n t谩ctil realizada por el usuario. Inkwell responder谩 cuando el usuario haga clic en el bot贸n. Hay tantos gestos como tocar dos veces, presionar prolongadamente, tocar hacia abajo, etc. A continuaci贸n se encuentran las tantas propiedades de este widget. Podemos establecer el radio del widget del tintero usando el radio y tambi茅n el radio del borde usando borderRadius. Podemos dar el color de salpicadura usando splashColor y podemos hacer muchas cosas
Bar
Conclusi贸n
Como puede ver, Flutter tiene muchos conjuntos diferentes de widgets que nos ayudan a personalizar la aplicaci贸n. Aprender cu谩ndo y c贸mo usarlos es la clave en un aleteo.
Si tiene alguna confusi贸n, no dude en comentar a continuaci贸n. Tambi茅n he adjuntado el c贸digo fuente a continuaci贸n, si茅ntete libre de explorarlo.
Codificaci贸n feliz 馃帀馃帀