LECCIÓN

XAML en Xamarin.Forms

Xamarin.Forms le permite definir su interfaz de usuario utilizando el lenguaje de marcado de aplicaciones extensible (XAML). Esto le proporciona una separación clara entre la interfaz de usuario y el comportamiento, y facilita el uso de un experto en diseño y herramientas de diseño.

El lenguaje de marcado de aplicaciones extensible (XAML) es un lenguaje basado en XML creado por Microsoft como una alternativa a código de programación para la creación de instancias e inicialización de objetos, y la organización de esos objetos en jerarquías de elementos primarios y secundarios.

XAML no es un requisito para utilizar en Xamarin.Forms, pero suele ser más conciso y visualmente coherente que el código equivalente, y que puede ser de utilidad. XAML está bien adaptado para su uso con la popular arquitectura de aplicación MVVM (modelo-vista-ViewModel): XAML define la vista que está vinculada al código ViewModel a través de enlaces de datos basados en XAML.

Este módulo le muestra cómo definir su UI en XAML. Creará páginas y agregará controles, todo en el marcado. También verá cómo acceder a los elementos de la IU desde el código para poder suscribirse a eventos de la IU y actualizar las propiedades de la IU a medida que cambian sus datos.

Dentro de un archivo XAML, el desarrollador Xamarin.Forms puede definir interfaces de usuario mediante todas las Xamarin.Forms vistas, diseños y páginas, así como clases personalizadas. El archivo XAML se compila para analizar en tiempo de compilación y buscar objetos con nombres, y en tiempo de ejecución para crear instancias e inicializar objetos, y para establecer vínculos entre estos objetos y el código de programación.

XAML tiene varias ventajas con respecto al código C# equivalente:

  • XAML suele ser más conciso y legible que el código c# equivalente.
  • La jerarquía de elementos primarios y secundarios inherente en XML permite que XAML imite con mayor claridad visual  esta jerarquía de los objetos de la interfaz de usuario.
  • El código XAML puede escribirse fácilmente por los programadores, pero también se presta a ser manejado y generado mediante herramientas de diseño visual también.

También hay desventajas, principalmente relacionadas con las limitaciones que son intrínsecas a los lenguajes de marcado:

  • XAML no puede contener código. Todos los controladores de eventos se deben definir en un archivo de código.
  • XAML no puede contener bucles para el procesamiento repetitivo. (Sin embargo, varios objetos visuales en Xamarin.Forms , en concreto, ListView pueden generar varios elementos secundarios basados en los objetos de su colección ItemsSource).
  • XAML no puede contener procesamiento condicional (sin embargo, un enlace de datos puede hacer referencia a un convertidor de enlace basado en código que permita de forma eficaz algún procesamiento condicional).
  • Por lo general, XAML no puede crear instancias de clases que no definen un constructor sin parámetros. (Sin embargo, a veces hay una forma de evitar esta restricción).
  • Normalmente, XAML no puede llamar a métodos. (De nuevo, esta restricción a veces se puede solucionar).

Todavía no hay un diseñador visual para generar XAML en Xamarin.Forms aplicaciones. Todo XAML debe estar escrito a mano, pero se puede utilizar HotReload para ver tus vistas en tiempo de diseño. 

Enlaces útiles

Explorando por tu cuenta

Ejercicios

En este ejercicio, utilizaremos algunos controles comununes para crear una UI sencilla.

«Git ignore para proyectos Xamarin» – Utiliza el mejor archivo git ignore para trabajar tus proyectos

Este es el archivo que utiliza mi propio equipo antes de crear una aplicación.

Comparte este curso

Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn