Ciencia y Tecnología

Las versiones candidatas de .NET MAUI están listas para el desarrollo de aplicaciones multiplataforma, basadas en el SDK de la plataforma para Android, iOS, macOS y Windows.


El equipo de desarrollo de .NET anunció el 12 de abril que la interfaz de usuario de la aplicación multiplataforma candidata a lanzamiento (.NET MAUI) está disponible. Nos complace anunciar que las versiones candidatas de .NET MAUI ya están disponibles hoy. El SDK se ha completado a nivel de API, actualizado por la biblioteca y ahora es compatible con GA (disponibilidad general), dijo David Ortinau, director de programas de Microsoft.

Al igual que otras versiones candidatas de .NET, esta versión está cubierta por una política de soporte “en vivo”. Es decir, Microsoft admite .NET MAUI en aplicaciones de producción.

Como marco para crear aplicaciones multiplataforma, .NET MAUI se basa en el SDK de la plataforma para Android, iOS, macOS y Windows. Estos conceptos básicos se incluyen en esta versión y se pueden usar directamente en C # además de maximizar el uso compartido de código y la productividad con .NET MAUI. .NET MAUI crea aplicaciones nativas en Android, iOS, macOS y Windows utilizando la tecnología más reciente y abstrayéndola en un marco común basado en .NET 6.

De forma predeterminada, las aplicaciones nativas se parecen al sistema operativo al que pertenecen, y el diseño se adapta automática y completamente a cada dispositivo sin ningún código adicional. La API de la plataforma está disponible directamente desde C # y permite el acceso a más de 60 funciones de la plataforma desde una sola API multiplataforma. Tiene acceso sin concesiones a almacenamiento aislado, sensores, geoposiciones, cámaras y más.

Para obtener .NET MAUI RC1, debe instalar o actualizar Visual Studio 2022 Preview a la versión 17.2 Preview 3. En el instalador, asegúrese de que .NET MAUI (versión preliminar) esté activado para el desarrollo móvil con cargas de trabajo de .NET. Para usar .NET MAUIRC1 en su Mac, le recomendamos que siga las instrucciones en la línea de comandos de wiki. La compatibilidad con .NET MAUI en Visual Studio 2022 para Mac estará disponible oficialmente en una futura versión preliminar.

La nueva plantilla de proyecto .NET MAUI ahora incluye una hoja de estilo predeterminada en “Resourcestyles.xaml” que contiene los mapas de colores y estilos para todos los controles. Por ejemplo, considere el medio. Cuando inicia una nueva aplicación, estas entradas de texto comienzan con un tema común, mientras se mantienen fieles a la plataforma en la que se está ejecutando.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

 TargetType="Entry">
     Property="TextColor" Value="{AppThemeBinding Light={StaticResource Black}, Dark={StaticResource White}}" />
     Property="FontFamily" Value="OpenSansRegular"/>
     Property="FontSize" Value="14" />
     Property="PlaceholderColor" Value="{AppThemeBinding Light={StaticResource LightGray}, Dark={StaticResource DarkGray}}" />
     Property="VisualStateManager.VisualStateGroups">
        >
             x:Name="CommonStates">
                 x:Name="Normal">
                    >
                         Property="TextColor" Value="{AppThemeBinding Light={StaticResource Black}, Dark={StaticResource White}}" />
                    >
                >
                 x:Name="Disabled">
                    >
                         Property="TextColor" Value="{AppThemeBinding Light={StaticResource LightGray}, Dark={StaticResource DarkGray}}" />
                    >
                >
            >
        >
    >
>

Personalizar controles

Una de las cosas que hace .NET MAUI para mejorar la arquitectura de Xamarin.Forms es agregar ganchos de código bajo y cambiar casi todo. Considere un ejemplo estándar de eliminación del subrayado característico de Android en un campo de entrada. ¿Qué sucede si el guión bajo no tiene un estilo multiplataforma, ya que solo existe en Android?

1
2
3
4
5
6

#if ANDROID
Microsoft.Maui.Handlers.EntryHandler.Mapper.ModifyMapping("NoUnderline", (h, v) =>
{
    h.PlatformView.BackgroundTintList = ColorStateList.ValueOf(Colors.Transparent.ToPlatform());
});
#endif

Este código debe ejecutarse en algún lugar al principio de la aplicación antes de llamar al controlador. Primero, # si ANDROID es una directiva de compilación condicional que indica que este código solo debe ejecutarse en Android. Esto no es necesario en todos los demás casos en los que los controles cambian en todas las plataformas.

A continuación, necesita controlar el acceso. El control que estoy usando es un control MAUI.NET. Cada propiedad, comando, evento, etc. El "administrador" "asigna" las entradas a la implementación de la plataforma. Para cambiar la asignación, puede acceder a ella a través de una asignación de controlador como Microsoft.Maui.Handlers.EntryHandler.Mapper. Desde el mapeador, hay tres formas:

  • PrependToMapping ejecutado antes del código .NET MAUI.
  • ModifyMapping realizado en nombre del código .NET MAUI.
  • AppendToMapping ejecutado después del código .NET MAUI.

En este caso, puede usar cualquiera de los dos, ya que se llamará al menos una vez y no afectará las propiedades nativas que otras implementaciones de la entrada deben cambiar.Usa el código aquí Cambios en el mapeo Agregar una entrada de llamada Sin subrayar.. La propiedad suele ser el nombre de la propiedad real, pero en este caso Microsoft presenta una nueva propiedad.

La acción h es un controlador que proporciona acceso a PlatformView. En este caso es un tipo. Vista de texto de Android.. En este punto, el código funciona directamente con el SDK de Android. Ahora que no necesita subrayar, puede implementar su propio diseño, por ejemplo, un cuadro de borde como un viejo Windows Phone.

contra # recarga caliente y XML recarga caliente Transforme los estilos de trabajo de las personas y aumente la productividad. Ingrese el código, guarde y vea sus cambios inmediatamente. Escriba mejor código más rápido con las funciones más recientes de depuración, IntelliSense y prueba en Visual Studio.
Utilice un lenguaje de programación, una base de código y un sistema de proyecto para todos los dispositivos que admitan recursos multiplataforma, como imágenes, íconos y pantallas de presentación.

Aplicación híbrida que se puede ejecutar en cualquier lugar

Comience a crear aplicaciones híbridas hoy usando C # en lugar de JavaScript. Comparta los componentes web de Blazor directamente en su aplicación .NET MAUI mientras accede a las características y paquetes nativos del dispositivo. Al usar .NET MAUI y Blazor juntos, puede reutilizar un conjunto de componentes WebUI en dispositivos móviles, de escritorio y web. Utilice una única pila de desarrollo que admita todas las cargas de trabajo modernas con un SDK integrado, una biblioteca de clases base y una cadena de herramientas.

Los componentes y las bibliotecas se pueden reutilizar más fácilmente gracias a un conjunto común de API disponibles para todos los tipos de aplicaciones .NET 6. También puede comenzar el desarrollo con cientos de miles de paquetes en el ecosistema.

Fuente: Microsoft

¿tú también?

¿Qué piensas sobre esto?

Ver también:

.NET 6 Preview 7: Microsoft revisa las plantillas de proyectos y mejora algunas API, incluidas las plantillas de proyectos de C#

Microsoft ha mejorado su carga de trabajo con el anuncio de .NET 6 Preview 5, una versión del marco para crear aplicaciones.

Microsoft ha anunciado .NET 6, el lanzamiento más rápido de la historia para admitir chips de silicio de Apple, contenedores de Windows separados por procesos y E/S de archivos mejorada.

.NET 6 proporcionó hasta un 40 % más rápido que .NET 5 y el almacenamiento en caché y las pruebas de ciclo cerrado fueron hasta un 30 % más rápidas.

About the author

w-admin

Leave a Comment