2012-06-18 17 views
5

Ich versuche, die Farbe von einem UIPopoverControler auf iOS 5. zu ändern, so zu tun, verwende ich eine Unterklasse von UIPopoverBackgroundView, die ich so auf meinen popover zuweisen:ändern UIPopoverController Farbe (und Zurück-Taste Farbe)

self.popover.popoverBackgroundViewClass = [KWPopoverBackgroundView class]; 

Mein Popover ist jetzt schwarz, wie ich es in meiner KWPopoverBackgroundView Klasse definiert habe, aber ich habe immer noch ein Problem mit dem Aussehen. Der Zurück-Button (Medals) des navigationControllers in meinem Popover ist immer noch blau. Ich möchte alles in Schwarz vereinheitlicht haben. Wie werde ich diese blaue Farbe los?

enter image description here

Ich versuchte, die tintColor meiner navigationController.navigationBar zu ändern, aber natürlich auch die popover Pflege does'nt darüber. Gibt es eine Möglichkeit, das in iOS 5.0 zu beheben? (Meine App ist im AppStore, ich möchte keinen hässlichen Hack, um das zu beheben) Danke.

+0

arbeiten nicht in iOS7 – Jacky

Antwort

12

Ok, ich habe gerade gefunden, wie man die Tönungsfarbe von der UINavigationController zurück Knopf (oder andere UIBarButtonItems) innerhalb der UIPopoverController ändert.

Mit UIPopoverBackgroundView können Sie nur Hintergrund- und Pfeilbilder ändern. Um die Darstellung der anderen Elemente zu ändern, müssen Sie UIAppearance mit etwas wie dem Folgenden verwenden.

// Set the UIBarButtonItem(s) inside UIPopoverController class to dark gray 
[[UIBarButtonItem appearanceWhenContainedIn:[UIPopoverController class], nil] 
         setTintColor:[UIColor colorWithWhite:0.1f alpha:1.0f]]; 

black popover with black back button item

+0

ich mit mehreren Schlüsselwörtern durchsucht habe und war über ein Bild geben und finden von Google-Bildsuche zu verwenden. Seltsamerweise war es diese Google-Bildersuche, die mir diese schöne Lösung brachte. Danke, dass du deine eigene Frage damit beantwortet hast! – acedanger