Xamarin.Essentials: Convertitori di colori
La classe ColorConverters in Xamarin.Essentials fornisce diversi metodi helper per System.Drawing.Color.
Operazioni preliminari
Per iniziare a usare questa API, leggere la guida introduttiva per Xamarin.Essentials assicurarsi che la libreria sia installata e configurata correttamente nei progetti.
Uso dei convertitori di colori
Aggiungere un riferimento a Xamarin.Essentials nella classe :
using Xamarin.Essentials;
Quando si lavora con System.Drawing.Color
è possibile usare i convertitori predefiniti di Xamarin.Essentials per creare un colore da Hsl, Hex o UInt.
var blueHex = ColorConverters.FromHex("#3498db");
var blueHsl = ColorConverters.FromHsl(204, 70, 53);
var blueUInt = ColorConverters.FromUInt(3447003);
Uso delle estensioni di colore
I metodi di estensione su System.Drawing.Color
consentono di applicare proprietà diverse:
var blue = ColorConverters.FromHex("#3498db");
// Multiplies the current alpha by 50%
var blueWithAlpha = blue.MultiplyAlpha(.5f);
Esistono diversi altri metodi di estensione tra cui:
- GetComplementary
- MultiplyAlpha
- ToUInt
- WithAlpha
- WithHue
- WithLuminosity
- WithSaturation
Uso delle estensioni di piattaforma
È inoltre possibile convertire System.Drawing.Color alla struttura di colore specifica della piattaforma. Questi metodi possono essere chiamati solo dai progetti iOS, Android e UWP.
var system = System.Drawing.Color.FromArgb(255, 52, 152, 219);
// Extension to convert to Android.Graphics.Color, UIKit.UIColor, or Windows.UI.Color
var platform = system.ToPlatformColor();
var platform = new Android.Graphics.Color(52, 152, 219, 255);
// Back to System.Drawing.Color
var system = platform.ToSystemColor();
Il metodo ToSystemColor
si applica a Android.Graphics.Color, UIKit.UIColor e Windows.UI.Color.
API
- Codice sorgente dei convertitori di colore
- Documentazione delle API dei convertitori di colore
- Codice sorgente delle estensioni di colore
- Documentazione delle API delle estensioni di colore
Video correlato
Altri video di Xamarin sono disponibili su Channel 9 e YouTube.