2010-12-20 2 views
5

Ich versuche, einen "dunklen Modus" für meine App zu erstellen, und ich möchte es auf eine wirklich einfache Weise tun. Gibt es eine Möglichkeit, einen Filter anzuwenden oder eine andere Ansicht über meine anderen Ansichten zu erstellen, so dass sie invertiert aussehen - ähnlich wie "Barrierefreiheit" auf iOS 3.2 und höher? Ich weiß, dass Core-Image-Filter nicht auf dem iPhone funktionieren, aber das ist keine große Sache für mich - solange es eine Möglichkeit gibt, eine andere Art von Filter anzuwenden.Filter über UIView/UIWindow anwenden, um das darunter liegende Ansichtsrendering zu ändern

Ist dies auf dem iPhone durchführbar? Wie macht Apple das?

+0

Ausgezeichnete Frage, ich möchte die Antwort auch wissen! – Kekoa

Antwort

1

Es klingt, als würden Sie eine halbtransparente Ansicht mit einer dunklen Farbe über Ihre gesamte Benutzeroberfläche platzieren. Wenn das der Fall ist, sollten Sie Forwarding Touch Events für eine Diskussion der betreffenden Probleme lesen.

Eine andere Möglichkeit besteht darin, die Farben und Bilder zu ändern, mit denen Sie Ihre Ansichten zeichnen.

Beide Schemata sind einfacher und funktionieren besser, wenn Sie mit benutzerdefinierten Ansichten arbeiten. Wenn Sie ein Overlay verwenden, wird im oben verlinkten Dokument erläutert, dass die Standardelemente der Benutzeroberfläche nicht auf die Weiterleitung von Ereignissen abgestimmt sind. Wenn Sie Farben ändern, gut ... je nachdem, welche UI-Elemente Sie verwenden, ist es möglicherweise nicht möglich, Ihre eigenen Bilder und Farben zu ersetzen.