Adición de una pantalla de presentación a un proyecto de aplicación maui de .NET
En Android e iOS, las aplicaciones de interfaz de usuario de aplicaciones multiplataforma de .NET (.NET MAUI) pueden mostrar una pantalla de presentación mientras se completa su proceso de inicialización. La pantalla de presentación se muestra inmediatamente cuando se inicia una aplicación, lo que proporciona comentarios inmediatos a los usuarios mientras se inicializan los recursos de la aplicación:
Una vez que la aplicación está lista para la interacción, se descarta su pantalla de presentación.
En un proyecto de aplicación MAUI de .NET, se puede especificar una pantalla de presentación en una sola ubicación del proyecto de aplicación y, en tiempo de compilación, se puede cambiar el tamaño automáticamente a la resolución correcta para la plataforma y el dispositivo de destino, y agregarse al paquete de la aplicación. Esto evita tener que duplicar manualmente y asignar un nombre a la pantalla de presentación por plataforma. De forma predeterminada, los formatos de imagen de mapa de bits (no vectoriales) no cambian automáticamente el tamaño de .NET MAUI.
Una pantalla de presentación de .NET MAUI puede usar cualquiera de los formatos de imagen de plataforma estándar, incluidos los archivos de gráficos vectoriales escalables (SVG).
Importante
.NET MAUI convierte archivos SVG en archivos PNG. Por lo tanto, al agregar un archivo SVG al proyecto de aplicación MAUI de .NET, se debe hacer referencia desde XAML o C# con una extensión .png. La única referencia al archivo SVG debe estar en el archivo del proyecto.
Se puede agregar una pantalla de presentación al proyecto de aplicación arrastrando una imagen a la carpeta Resources\Splash del proyecto, donde su acción de compilación se establecerá automáticamente en MauiSplashScreen. Esto crea una entrada correspondiente en el archivo del proyecto:
<ItemGroup>
<MauiSplashScreen Include="Resources\Splash\splashscreen.svg" />
</ItemGroup>
Nota
También se puede agregar una pantalla de presentación a otras carpetas del proyecto de aplicación. Sin embargo, en este escenario, su acción de compilación debe establecerse manualmente en MauiSplashScreen en la ventana Propiedades .
Para cumplir con las reglas de nomenclatura de recursos de Android, los nombres de los archivos de pantalla de presentación deben estar en minúsculas, iniciar y terminar con un carácter de letra y contener solo caracteres alfanuméricos o caracteres de subrayado. Para obtener más información, consulte Introducción a los recursos de la aplicación en developer.android.com.
El tamaño base de la pantalla de presentación se puede especificar estableciendo el BaseSize atributo en valores divisibles por 8:
<MauiSplashScreen Include="Resources\Splash\splashscreen.jpg" BaseSize="128,128" />
El valor del BaseSize atributo representa la densidad de línea base de la pantalla de presentación y es eficazmente el factor de escala de 1,0 para la pantalla de presentación desde la que se derivan todos los demás tamaños de densidad. Este valor se usará para asegurarse de que las pantallas de presentación se cambien correctamente a diferentes densidades de presentación. Si no especifica un BaseSize para una pantalla de presentación basada en mapa de bits, la imagen no se cambia de tamaño. Si no especifica un BaseSize valor para una pantalla de presentación basada en vectores, se supone que las dimensiones especificadas en svG son el tamaño base. Para detener el cambio de tamaño de las imágenes vectoriales, establezca el Resize atributo en false:
<MauiSplashScreen Include="Resources\Splash\splashscreen.svg" Resize="false" />
Para agregar un tono a la pantalla de presentación, que resulta útil cuando tiene una imagen sencilla que le gustaría representar en un color diferente al origen, establezca el TintColor atributo :
<MauiSplashScreen Include="Resources\Splash\splashscreen.svg" TintColor="#66B3FF" />
También se puede especificar un color de fondo para la pantalla de presentación:
<MauiSplashScreen Include="Resources\Splash\splashscreen.svg" Color="#512BD4" />
Los valores de color se pueden especificar en hexadecimal o como un color MAUI de .NET. Por ejemplo, Color="Red" es válido.
En tiempo de compilación, la pantalla de presentación se puede cambiar de tamaño a la resolución correcta para la plataforma y el dispositivo de destino. A continuación, la pantalla de presentación resultante se agrega al paquete de la aplicación.
En Android, la pantalla de presentación se agrega al paquete de la aplicación como Recursos/valores/maui_colors.xml y Recursos/dibujables/maui_splash_image.xml. Las aplicaciones .NET MAUI usan de Maui.SplashTheme forma predeterminada, lo que garantiza que se mostrará una pantalla de presentación si está presente. Por lo tanto, no debe especificar un tema diferente en el archivo de manifiesto o en la MainActivity clase :
using Android.App;
using Android.Content.PM;
namespace MyMauiApp
{
[Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize)]
public class MainActivity : MauiAppCompatActivity
{
}
}
Para escenarios de pantalla de presentación más avanzados, se aplican enfoques por plataforma.