Farbauswahl in einer plattformübergreifenden .NET-MAUI-Anwendung
Aktualisiert am 7 Min. LesezeitVon Jonas Richter

Color Picker in eine .NET-MAUI-App integrieren

Das kostenlose Paket Docutain.ColorPicker.MAUI bietet eine gemeinsame asynchrone API für die Farbauswahl unter Android und iOS. Version 2.0.0 ergänzt Live-Vorschauen, einen neu entwickelten Android-Picker, Lokalisierung sowie Unterstützung für Trimming und Native AOT.

Aktuelle Version
2.0.0
Zielframework
.NET 10
Plattformen
Android 24+ und iOS 15+
Lizenz
Apache 2.0

Docutain.ColorPicker.MAUI 2.0.0 installieren

Fügen Sie das Paket dem gemeinsamen MAUI-Projekt hinzu. Version 2.0.0 zielt auf .NET 10 und ist die aktuell stabile Veröffentlichung auf NuGet.

dotnet add package Docutain.ColorPicker.MAUI --version 2.0.0

Alternativ lässt sich die Paketreferenz direkt in die Projektdatei eintragen:

<PackageReference Include="Docutain.ColorPicker.MAUI" Version="2.0.0" />

Color Picker öffnen und Ergebnis verarbeiten

Alle Konfigurationswerte sind optional. PickColor öffnet die plattformspezifische Farbauswahl und wird abgeschlossen, sobald der Nutzer eine Farbe bestätigt oder den Dialog abbricht. Über den Callback kann die Oberfläche Änderungen bereits während der Auswahl als Vorschau anzeigen.

var previousColor = BackgroundColor;

// Define your custom config; all values are optional.
var colorConfig = new ColorPickerConfig
{
    Title = "Pick a color",
    DefaultColor = Colors.Yellow,
    PositiveButton = "OK",
    NegativeButton = "Cancel",
    SupportsAlpha = true,
    ShowDefaultColors = true,
    Dismissable = true,
    OnColorChanged = color => BackgroundColor = color,
    RecentColorsLabel = "Recent",
    DefaultColorsLabel = "Colors",
    CustomColorLabel = "Custom color"
};

// Open the picker and wait for the result.
var color = await ColorPicker.PickColor(colorConfig);

if (color != null)
{
    BackgroundColor = color;
}
else
{
    // Restore the previous color after canceling a live preview.
    BackgroundColor = previousColor;
}

Konfigurationsmöglichkeiten

OnColorChangedLiefert unter Android und iOS laufende Farbänderungen für eine Echtzeitvorschau.
DismissableMit false lässt sich der Picker nur über eine explizite Buttonauswahl schließen.
SupportsAlphaAktiviert die Alpha-Auswahl auf beiden Plattformen, einschließlich des neuen Android-Reglers.
DefaultColorLegt die beim Öffnen vorausgewählte Farbe fest.
ShowDefaultColorsBlendet die integrierte Android-Farbpalette ein oder aus.
Labels und ButtonsTitle, Buttontexte und Android-Abschnittslabels lassen sich lokalisieren.

Natives Verhalten unter Android und iOS

Unter iOS 15 und neuer öffnet das Paket den nativen UIColorPickerViewController. Unter Android 7/API 24 und neuer nutzt Version 2.0.0 ein Material-Bottom-Sheet mit HSV-Fläche für Sättigung und Helligkeit, Farbtonregler, optionalem Alpha-Regler, integrierter Palette und zuletzt ausgewählten Farben.

Bestätigte Android-Farben werden lokal gespeichert und beim nächsten Öffnen als zuletzt verwendete Farben angeboten. Das Bottom-Sheet folgt dem Material-Theme der App einschließlich Dark Mode; Buttontexte und die drei Abschnittslabels sind konfigurierbar.

Das Paket ist für Android und iOS vorgesehen. Ein MAUI-Projekt kann zusätzlich Windows oder macOS adressieren, der Color Picker wird für diese Plattformen jedoch nicht angeboten.

Was ändert Version 2.0.0?

Der Android-Picker wurde neu entwickelt und sämtliche Drittanbieterabhängigkeiten wurden entfernt. Das Paket zielt jetzt auf .NET 10, enthält XML-Dokumentation und ist für Trimming sowie Native AOT ausgelegt. Projekte, die von 1.x aktualisieren, sollten daher vor dem Paketwechsel ihr Zielframework und die unterstützten Plattformversionen prüfen.

Checkliste für den produktiven Einsatz

  • .NET 10 verwenden und Android API 24 sowie iOS 15 als Mindestversionen prüfen.
  • Das nullable Ergebnis behandeln, da Nutzer die Auswahl abbrechen können.
  • Bei einer abgebrochenen Auswahl den vorherigen Wert wiederherstellen, falls OnColorChanged die Oberfläche bereits verändert hat.
  • Alpha nur aktivieren, wenn die verwendende Oberfläche Transparenz unterstützt.
  • Titel, Buttons und Android-Abschnittslabels über die App-Ressourcen lokalisieren.
  • Auf echten Android- und iOS-Geräten sowie mit Dark Mode, Trimming und der verwendeten Native-AOT-Releasekonfiguration testen.

Warum Docutain dieses Paket bereitstellt

Die Komponente entstand, damit Nutzer des Docutain Document Scanner SDK die Scannerfarben an das Branding ihrer App anpassen können. Sie ist unabhängig davon kostenlos verfügbar und kann daher auch an anderen Stellen einer MAUI-Anwendung eingesetzt werden.

Direkt integrieren

Mit dem aktuellen NuGet-Paket starten

Version 2.0.0 in einem .NET-10-MAUI-Projekt ergänzen und Live-Vorschau, Alpha-Auswahl sowie lokalisierte Labels dort einsetzen, wo sie die Bedienung verbessern.

Kontaktieren Sie uns und erhalten Sie Ihr Angebot


Lassen Sie unseren Kollegen Harry Beck wissen, wie wir Ihnen helfen können und erhalten Sie ein unverbindliches Angebot.



Informationen zur Verarbeitung Ihrer Angaben finden Sie in unseren Datenschutzhinweisen.


Diesen Artikel teilen


Diesen Artikel in Facebook teilen Diesen Artikel in LinkedIn teilen Diesen Artikel in Twitter teilen Diesen Artikel in Xing teilen Diesen Artikel in Pinterest teilen Diesen Artikel über Mail teilen Diesen Artikel über WhatsApp teilen