Xamarin, Xamarin.Forms

Introduction to Xamarin.Forms


Meet-Xamarin.Forms_4.png

“Con Xamarin.Forms podemos compartir la interfaz de usuario ademas de compartir el backend.”

Historia…

En mayo 28 de 2014, Xamarin dio a conocer Xamarin.Forms, que permite a los desarrolladores escribir código de interfaz de usuario que puede ser compilado para dispositivos Android, iOS y Windows.

¿Que quiere decir esto?
Significa que podemos crear apariencias similares para todas las plataformas con la misma experiencia nativa.

button.png

Desde la aparición de Xamarin.Forms ha cambiado mucho la forma de afrontar el diseño de la App y podemos tener una capa de interfaz común para diseñar nuestras interfaces multiplataforma. El resultado final son los controles nativos de la plataforma.

  1. Core Library: Lógica compartida
  2. Shares UI Code: Interfaz de usuario compartido.
  3. Specific Platform layer: acceso a recursos específicos de la plataforma.

Controles en Xamarin.Forms

Pages

Las páginas son controles contenedores que representan un Activity en Android, un View Controller en iOS y una Página en Windows Phone.

pages

Layouts

Los layouts son contenedores de otros layouts o vistas. Se utilizan para posicionar los controles dentro de las páginas.

Layouts

Views

Los controles o widgets más comunes que utilizamos normalmente en las aplicaciones.

  • BoxView: Control para pintar un rectángulo relleno de color.
  • Button: Control tipo botón.
  • DatePicker: Control para seleccionar fechas.
  • Entry: Control para editar texto en una sola línea.
  • Editor: Control para editar texto múltiples líneas.
  • Image: Control para mostrar imágenes.
  • Label: Control para mostrar texto de solo lectura.
  • ListView: Control para mostrar una lista.
  • OpenGLView: Control para mostrar contenido OpenGL.
  • Picker: Control para seleccionar un elemento de una lista.
  • ProgressBar: Control de barra de progreso.
  • ActivityIndicator : Control visual para avisar que algo está en curso sin informar el progreso.
  • SearchBar: Control de búsqueda.
  • Slider: Control visual para la captura de un valor lineal.
  • Stepper: Control para incrementar o reducir un valor numérico.
  • Switch: Control visual para la selección on-off.
  • TableView: Estructura contenedora de columnas y celdas.
  • TimePicker: Control visual para la entrada de horas y minutos.
  • WebView: Control contenedor de HTM

 Cells

Celdas predefinidas para facilitar el uso en listas y TableViews.

  • EntryCell: Celda especializada con un label para el título y un entry para la introcucción de datos.
  • SwitchCell: Celda especializada con un label para el título y un switch para seleccionar.
  • TextCell: Celda especializada con dos labels, no con el título y el otro par la descripción.
  • ImageCell: Celda especializada con una imagen y dos labels, uno para el título y otro para la descripción.

Otras utilidades

Otras utilidades que nos serán de gran ayuda en el desarrollo son:

  • CustomRenderers: Estos nos permiten personalizar la visualización y el comportamiento de los controles para cada una de las plataformas.
  • DependencyServices: Nos permite acceder desde Xamarin.Forms a características nativas de cada plataforma, como podría ser el GPS, Cámara, etc.
  • MessagingCenter: Nos permite publicar y suscribirse a mensajes para comunicar nuestros ViewModels o diferentes componentes.

¿Para que se recomienda usar Xamarin.Forms?

  • Aplicaciones de entrada de datos
  • Prototipos y pruebas de concepto
  • Apps que requieren poca funcionalidad especifica de las plataformas
  • Apps donde compartir el codigo es mas importante que la interfaz de usuario

Xamarin.Forms soporta 5 plataformas de aplicaciones distintas

De manera general, una aplicación Xamarin.Forms en Visual Studio consiste de 5 proyectos independientes para cada una de las 5 plataformas más un sexto proyecto conteniendo el código común. Los 5 proyectos de las plataformas por lo general son muy pequeños, a menudo contienen simplemente un poco de código de inicio repetitivo. Los proyectos SAP o PCL contienen el resto de la aplicación, incluyendo el código de la interfaz de usuario.

  • iOS = iPhone, iPad y iPod Touch.
  • Android = Teléfonos y Tabletas Android.
  • Plataformas Microsoft Windows o Windows Phone:
    – La Plataforma Universal de Windows (UWP) para aplicaciones que se ejecutan sobre dispositivos Windows 10 o Windows 10 Mobile.
  • La API Windows Runtime para dispositivos Windows 8.1
  • La API Windows Runtime para dispositivos Windows Phone 8.1.

Aunque originalmente Xamarin.Forms fue concebido como una API para dispositivos móviles independiente de la plataforma, Xamarin.Forms no está limitado a teléfonos. Una aplicación Xamarin.Forms puede ser ejecutada en tabletas o en equipos de escritorio como en Windows 10 Desktop.

Bibliotecas

Las bibliotecas Xamarin.Forms.Core y Xamarin.Forms.Xaml implementan la API Xamarin.Forms. Dependiendo de la plataforma, Xamarin.Forms.Core hace uso de una de las bibliotecas Xamarin.Forms.Platform. Estas librerías son en su mayoría una colección de clases llamadas Renderizadores (Renderers) que transforman los objetos de la interfaz de usuario Xamarin.Formsen la interfaz de usuario especifica de la plataforma.

Resumen

Xamarin.Forms es una API que virtualiza no solo los elementos de la interfaz de usuario de cada plataforma, sino también los paradigmas de la interfaz de usuario.

Mas información:

Anuncios

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s