Convirtiendo colores en Xamarin Forms

Esta vez quiero compartir con ustedes esta gran característica. Cuando la vi me ENCANTÓ!😍¡Puedo jugar con los colores! 💚

En este artículo, aprenderemos acerca de las diferentes funcionalidades que Xamarin Essentials trae a la biblioteca System.Drawing.Color. Esta explicación se dividirá en las siguientes partes:

🔹 Usando formatos de color.

🔹 Transformando los aspectos del color.


En primer lugar … ¿Qué necesito?

  • Agrega desde el NuGet Package el plugin: Xamarin.Essentials

Puedes leer más informacion sobre Xamarin Essential aquí.


¡Empecemos!

Usando formatos de color

Xamarin Essential creó la clase ColorConverts para nosotros. Con esta clase podemos convertir los colores a diferentes tipos como los siguientes:

  • FromHex ➡ Recibe un string como un valor hexadecimal.
  • FromHls ➡ Recibe tres valores tipo Float como parámetros: Tono, Saturación y Luminosidad.
  • FromHsla ➡ Recibe tres tipo Float como parámetros (Tono, Saturación y Luminosidad) y uno de los parámetros como un valor Int (Alfa).

Transformando los aspectos del color

Este es mi tema favorito💗. System.Drawing.Color tiene los métodos de extensión que nos permiten jugar/modificar la apariencia del color sin que sea necesario ningún otro plugin😎. ¡Veamos mis favoritos!

— WithAlpha — WithLuminosity

— WithHue — WithSaturation

— AddLuminosityWithAlpha — WithLuminosity

— WithHue — WithSaturation — AddLuminosity

Para usarlo, solo debe llamar el tipo de extensión de color, y luego la extensión deseada.

Veamos un ejemplo en código:

Veamos un ejemplo

En el siguiente ejemplo, utilicé el mismo color con diferentes tipos de extensiones de color pero con el mismo valor como parámetro (30), de esta manera podemos apreciar la diferencia y los efectos que cada uno realiza.

XAML

Código C#