Wie färbe ich die Hintergrundbilder eines UIButton programmatisch und dynamisch ein?

Ich arbeite an einer App - oder vielmehr an einem wiederverwendbaren "Framework", das ich gerne teile, sobald es funktioniert. Innerhalb dieser App sollte der Benutzer in der Lage sein, aus einer Liste von Farbthemen zu wählen. Daher muss die App in der Lage sein, ihre Benutzeroberflächenelemente auf eine eher dynamische Weise einzufärben.

Bei Buttons funktioniert das Abtönen nicht. Ordnungsgemäß getönte Hintergrundbilder müssen hier mitgeliefert werden. Das Vorbereiten eines Satzes von Hintergrundbildern für jedes von ihnen ist jedoch nur das zweitbeste. Es ist nicht dynamisch und flexibel genug.

Am Ende kann eine Lösung darin bestehen, ein monochromes (graues) Gradientenbild für den ausgewählten und normalen Zustand bereitzustellen und dieses Bild programmgesteuert mit CoreGraphics oder OpenGL zu tönen. Aber ehrlich gesagt weiß ich nicht, wo ich dort anfangen soll. Wie sollte der Farbverlauf aussehen und wie würde ich ihn dann programmatisch in einer bestimmten Farbe tönen?

Ziemlich viel gilt für UISegmentedControls, nur etwas komplizierter. :) Jede generische Lösung, die auch UISegementedControls abdeckt, wird sehr geschätzt.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage