Flex Layout Page y Navigation Page en Visual Studio

Clase 10 de 23Curso de .NET MAUI: Fundamentos de Interfaces Gráficas

Resumen

Dominar la estructura y uso del Flex Layout Page y el Navigation Page es fundamental para construir aplicaciones móviles eficientes y organizadas. Estas herramientas de desarrollo en Visual Studio permiten gestionar eficazmente menús interactivos y navegación jerárquica, aspectos clave para mejorar la experiencia del usuario en tu aplicación.

¿Qué es y cómo funciona el Flex Layout Page?

El Flex Layout Page ofrece una solución práctica para aplicaciones que requieren menús laterales dinámicos. Este diseño presenta dos áreas principales:

  • Un menú lateral ubicado generalmente a la izquierda, donde puedes colocar diferentes opciones ajustadas a tus necesidades.
  • Una vista principal al lado derecho, donde la información específica se despliega según las acciones que realicen los usuarios.

En Visual Studio, se implementa cambiando el Content Page por la etiqueta específica:

<flayout.page>
    <flexlayout.page.flayout>
        <!-- Inserta aquí tu menú de opciones -->
    </flexlayout.page.flayout>
    <flexlayoutpage.dj>
        <!-- Inserta detalles adicionales aquí -->
    </flexlayoutpage.dj>
</flayout.page>

Podemos visualizar claramente ambos componentes gracias a las referencias entre páginas alojadas en diferentes carpetas mediante alias simplificados.

¿Para qué sirve el Navigation Page?

El Navigation Page simplifica el proceso de desplazamiento dentro de una aplicación mediante navegación jerárquica sencilla basada en una estructura de pila, siguiendo la lógica Last In, First Out (última en entrar, primera en salir). Esto es especialmente útil para:

  • Aplicaciones con múltiples vistas jerarquizadas.
  • Facilitar la navegación hacia adelante y hacia atrás.

Su implementación básica, junto al Flex Layout Page, se realiza agregando la etiqueta Navigation Page dentro del contenido principal.

<NavigationPage>
    <x:Arguments>
        <local:MainPage />
    </x:Arguments>
</NavigationPage>

¿Cómo integrar Flex Layout Page con Navigation Page?

Para obtener lo mejor de ambas estructuras, combínalas en tu proyecto como se mostró en el ejemplo, colocando Navigation Page dentro del detalle en Flex Layout. Esto permite que cualquier página de contenido pueda integrar navegación fluida.

Organizando el menú con Collection View

Para definir claramente las opciones del menú lateral, se utiliza Collection View que enlaza información desde una clase personalizada. Este enfoque facilita presentar elementos estructurados con ícono y descripción claramente desplegados.

Cada elemento dentro del Collection View necesitará información predefinida desde una clase con atributos específicos como título, ícono y tipo destino (target type).

¿Cómo definir fácilmente referencias entre páginas?

Las rutas y referencias entre páginas en tu proyecto se simplifican con alias definidos previamente, evitando repetición excesiva y facilitando modificaciones futuras. Por ejemplo, el uso del alias "views" facilita acceder rápidamente a la ruta específica de tu proyecto.

¿Cómo está estructurada la clase personalizada para Collection View?

Debes crear una clase pública sencilla con tres atributos importantes:

  • Título.
  • Ícono.
  • Tipo destino de la página objetivo.

Aquí un ejemplo simplificado de su estructura básica:

public class MenuItem {
    public string Titulo { get; set; }
    public string Icono { get; set; }
    public Type TargetType { get; set; }
}

Pon a prueba estas funcionalidades y personalízalas adaptándolas a las necesidades específicas de tu proyecto. Además, si realizas algún ajuste o tienes consultas específicas, compártelas en comentarios para enriquecer el aprendizaje y resolver posibles dudas.