Integración a plataformas
Clase 2 de 21 • Curso de .NET MAUI: Manejo del XAML
Contenido del curso
Clase 2 de 21 • Curso de .NET MAUI: Manejo del XAML
Contenido del curso
Ivan Camilo Quintero Santacruz
José Daniel Suavita Murillo
Hay que tener en cuenta que para que se nos despliegue el mapa apenas se inicie la aplicación, hay que hacer algunas modificaciones que no se muestran en esta clase.
Básicamente hay dos formas de hacerlo, ambas requieren modificar
Modificar App.xaml.cs para reemplazar el View por defecto con el nuestro
Modificar AppShell.xaml para indicar que el template de contenido que se carga por default es de nuestro View en lugar del por Defecto.
1. MODIFICANDO App.xaml.cs
En nuestro proyecto encontramos el archivo App.xaml, y en el code behind (App.xaml.cs) podemos encontrar nuestro página o componente que se inicializa por defecto cuando se abre la App. Por default tenemos esto:
public partial class App : Application { public App() { InitializeComponent(); MainPage = new AppShell(); } }
Lo que debemos hacer es modificar MainPage con nuestra página de mapa, así:
public partial class App : Application { public App() { InitializeComponent(); MainPage = new Views.ExplorandoFeatures.MapSamplePage(); } }
2. MODIFICANDO AppShell.xaml
Esta forma me parece más correcta.
En primer lugar debemos importar nuestro namespace en donde tenemos nuestra página de mapa dentro de la etiqueta Shell principal, luego en la etiqueta ShellContent reemplazamos el valor de DataTemplate por nuestra página y listo. por defecto tenemos esto:
<?xml version="1.0" encoding="UTF-8" ?> <Shell x:Class="MauiPlatzi.AppShell" xmlns="url/dotnet/2021/maui" xmlns:x="url/xaml" xmlns:local="clr-namespace:MauiPlatzi" Shell.FlyoutBehavior="Disabled"> <ShellContent Title="Home" ContentTemplate="{DataTemplate local:MainPage}" Route="MainPage" /> </Shell>
Luego de nuestro cambio debe quedar así:
<?xml version="1.0" encoding="UTF-8" ?> <Shell x:Class="MauiPlatzi.AppShell" xmlns="url/dotnet/2021/maui" xmlns:x="url/xaml" xmlns:local="clr-namespace:MauiPlatzi" xmlns:miAliasNameSpace="clr-namespace:MauiPlatzi.Views.ExplorandoFeatures.MapSamplePage" Shell.FlyoutBehavior="Disabled"> <ShellContent Title="Home" ContentTemplate="{DataTemplate miAliasNameSpace:MapSamplePage}" Route="MainPage" /> </Shell>
Aquí hay otro ejercicio sobre ++implementación de la API de teléfono++ en .NET MAUI:
https://learn.microsoft.com/en-us/training/modules/build-mobile-and-desktop-apps/