{Vibrancy.Forms NuGet} #Xamarin.iOS


Introducción

Los efectos de desenfoque se pueden lograr en todas las plataformas principales, pero los efectos de vitalidad (vibrancy) son «exclusivos de Apple», el día de hoy veremos cómo hacer uso de ambos desde una solución desarrollada en Xamarin.Forms.

Instalación

Una vez creado el proyecto deberemos de agregar el NuGet Package, para esto hagamos clic con el botón derecho sobre la solución y seleccionemos Agregar -> Agregar paquetes NuGet y buscamos «Vibrancy.Forms«, el cual deberemos de instalar en todos los proyectos, es decir, tanto en el proyecto compartido como en los proyectos de plataforma.

Nota: Al momento de escribir este artículo, la versión más reciente es la 1.0.5

Screen Shot 2020-06-16 at 10.11.42

Posteriormente vayamos al archivo AppDelegate.cs del proyecto iOS para inicializar Vibrancy.Forms en el método FinishedLaunching().

public override bool FinishedLaunching(UIApplication app, NSDictionary options)
        {
            Vibrancy.Forms.iOS.VibrancyForms.Init();
            global::Xamarin.Forms.Forms.Init();
            LoadApplication(new App());

            return base.FinishedLaunching(app, options);
        }

Ahora, pasemos a la interfaz de usuario, para esto vayamos el archivo XAML en el cual quiera agregar la funcionalidad, en mi casi y por motivos de demostración es el archivo MainPage.xaml, entonces agreguemos el espacio de nombres Vibrancy.Forms.

xmlns:vf="clr-namespace:Vibrancy.Forms;assembly=Vibrancy.Forms"

Una vez hecho esto, podemos hacer uso de BlurView como cualquier otra vista.

Screen Shot 2020-06-16 at 10.31.42

Nota: El BlurView necesita tener exactamente una vista secundaria.

Una vez teniendo acceso al BlurView, podemos personalizar el BlurStyle y el efecto Vibrancy como deseemos.

Screen Shot 2020-06-16 at 11.23.46

Tengamos en cuenta que los BlurStyles Regular y Prominent se adaptarán automáticamente al tema del sistema (claro u oscuro); esto también aplica para el efecto Vibrancy, pero si seleccionamos otro BlurStyle como ExtraLight o ExtraDark, tendremos que ajustarlos manualmente.

Solo iOS / iPadOS

A pesar de ser un complemento de Xamarin.Forms, Vibrancy.Forms no es multiplataforma. Está diseñado solo para iOS y iPadOS.

¿Por qué?
El autor de este NuGet comenta que inició este proyecto porque quería tener efectos de desenfoque y vitalidad en sus aplicaciones de iOS como de iPadOS. Sin embargo, la vitalidad no fue proporcionada por ningún complemento existente, esto significa que ha terminado al lograrlo, ya que no planea implementar esto en otras plataformas. Comenta que no reinventará los complementos multiplataforma existentes.

Por lo tanto, si deseamos tener hermosos desenfoques multiplataforma, podemos utilizar Sharpnado.MaterialFrame de Jean-Marie Alfonsi. Y bueno, de ser así no contaremos con los efectos de vitalidad (Vibrancy).

Ejemplo

Vibrancy.Forms

Descarga el código completo de este ejemplo desde mi GitHub.

Más información: Vibrancy.Forms

¡Happy Coding!

Un comentario en “{Vibrancy.Forms NuGet} #Xamarin.iOS

  1. Pingback: {Vibrancy.Forms NuGet} #Xamarin.iOS - Muhammad Zaeem Khan

Deja un comentario