2012-03-27 14 views
8

ich diese Ansichten haben Herauszufinden, auf dem ich UILabels als Text hinzufügen, können die Ansichten eine Hintergrundfarbe haben, die dynamisch ist und nicht gewählt werden kann,die Textfarbe auf Basis Farbe iOS auf den Hintergrund Ansicht

Basierend auf, dass ich Um die Schriftfarbe aus nur einer Auswahl von drei Möglichkeiten zu ermitteln - zwei schwarz oder weiß oder dunkelgrau.

Zum Beispiel auf einem dunkelroten Hintergrund, wäre ein weißer Schrift besser geeignet als schwarz sein, während auf einem hellgelben, vielleicht ein dunkelgrau oder schwarz lesbar sein würde,

gibt es einen Index i von überprüfen könnte, der Hintergrund UIColor um die Beleuchtungsstärke zu sehen?

+0

Sie könnten die RGBA-Werte aus dem UIColor holen und sie mitteln und diesen Wert verwenden. – Ian

Antwort

7

Werfen Sie einen Blick auf meine UIColor category und die blackOrWhiteContrastingColor Methode. Dies wird Ihnen sagen, was aus Schwarz oder Weiß besser aussehen wird. Sie können das auch so erweitern, dass es dunkelgrau unterstützt.

Grundsätzlich ist es so, dass man den Helligkeitsunterschied zwischen der Zielfarbe und Schwarz und dann zwischen der Zielfarbe und Weiß betrachtet. Es wählt dann den größten Helligkeitsunterschied.

Verwandte Themen