Listados
Last updated
Was this helpful?
Last updated
Was this helpful?
Los listados son un componente muy utilizado en las aplicaciones ya que son muy útiles para mostrar... eso es, una lista de elementos! Permiten incluir desde texto hasta otros elementos más avanzados como iconos, imágenes, botones o toggles. Además se les puede añadir funcionalidades más avanzadas como edición, arrastrar para reordenar, arrastrar para mostrar botones de edición o de borrado, estirar para actualizar, etc.
Para incluir un listado tenemos que usar la directiva <ion-list>
y cada elemento del listado lo incluiremos con <ion-item>
. Por ejemplo, para crear un listado con elementos tipo texto tendríamos que escribir el siguiente código:
El listado tendrá que ir dentro de la sección <ion-content>
de la página para que funcione el scroll correctamente, ya que en otro caso no se podría arrastrar. Además se recomienda eliminar el atributo "padding
" de la etiqueta "ion-content
" para que el listado ocupe todo el espacio disponible. En la siguiente figura se puede ver el resultado del código de ejemplo anterior:
Para eliminar las líneas del listado podemos aplicar el atributo "
no-lines
" en la etiqueta "ion-list
".
Para crear listados cuyos elementos sean pulsables simplemente tendremos que cambiar los items por botones, aplicando el atributo "ion-item
" sobre cada botón para que adapte su apariencia:
Al utilizar botones la apariencia del listado cambiará para algunas plataformas, por ejemplo para iOS aparecerá una flecha en la parte derecha:
Además de botones también podemos usar enlaces tipo "
a
", aplicándoles también el atributo "ion-item
". En ambos casos la apariencia obtenida será la misma.
Podemos crear cabeceras dentro de una lista para organizar o agrupar mejor los elementos de la misma. Para crear una cabecera simplemente tenemos que utilizar la clase ion-list-header
. Estos elementos se mostrarán con un estilo distinto al del resto de elemento (y no serán pulsables). A continuación se incluye un ejemplo:
Con lo que obtendríamos un resultado similar al de la siguiente figura:
Podemos añadir iconos a los elementos de un listado simplemente usando la etiqueta "<ion-icon>
" y los atributos "item-start
" o "item-end
" para indicar que el icono se coloque al inicio o al final del elemento, respectivamente. A continuación se incluye un ejemplo en el que el primer elemento solo tiene un icono alineado a la izquierda, el segundo también tiene un icono pero alineado a la derecha, y en el tercer elemento se ha añadido un icono a cada lado:
Con lo que obtendríamos un resultado como el de la siguiente figura:
Además de los iconos podemos mostrar imágenes un poco más grandes que se verán redondeadas, imitando el estilo tipo avatar. Para esto simplemente tenemos que añadir la imagen usando la etiqueta "<item-avatar>
" siguiendo la siguiente estructura:
Mediante el atributo "item-start
" indicamos que el avatar se coloque al inicio. Si lo queremos poner al final de la fila podríamos usar en su lugar el atributo "item-end
". Además a continuación se han insertado dos líneas de texto, una usando la etiqueta "<h2>
" y otra mediante un párrafo, con lo que obtendríamos un resultado similar al de la siguiente imagen:
No es necesario insertar siempre dos líneas de texto ni usar la cabecera tipo
h2
, podemos indicar solamente una línea de texto o aplicar otros formatos al mismo.
Además de iconos y avatares también podemos incluir imágenes un poco mas grandes tipo thumbnail. Para esto tenemos que insertar la imagen dentro de la etiqueta "<ion-thumbnail>
" e indicar la disposición mediante el atributo "item-start
" o "item-end
". A continuación se incluye un ejemplo de uso:
En este ejemplo, además de insertar dos líneas de texto con "h2
" y "p
", se ha añadio un botón alineado a la derecha de cada fila. Si visualizamos este código obtendríamos un resultado similar al de la siguiente figura: