2014-05-02 9 views
21

Ustawiłem domyślny kolor tinty w moim scenorysie, ale otrzymuję stary niebieski, domyślny kolor dla mojego elementu UISwitch.iOS 7.1 Domyślny kolor tinty nie zmienia się dla UISwitch

Więc starałem się umieścić

[[UIView appearance] setTintColor:APPCOLOR]; 

wewnątrz mojej aplikacji metody delegata

- (void)applicationWillResignActive:(UIApplication *)application 

ale nadal nie ma szczęścia, próbowałem też umieścić tam

[[UISwitch appearance] setTintColor:APPCOLOR]; 

i znowu bez zmian.

APPCOLOR jest zdefiniowany w moim pliku constants.h, który oczywiście obejmuję.

Jak ustawić kolor odcienia mojego UISwitcha na całym świecie?

Kolor tinty pozostałych elementów, na przykład UIButton zmienia się prawidłowo.

Odpowiedz

69

Kolor tinty UISwitch kontroluje kolor ramki. Jeśli chcesz ustawić kolor, musisz użyć onTintColor.

Przeczytaj here dokumentację tego, co te kolory kolorów reprezentują dla UISwitch.

enter image description here

Ponadto, nie powinno być ustawienie wyglądu w applicationWillResignActive: metody delegata. Jest to wywoływane, gdy aplikacja rezygnuje z aktywnego stanu. Powinieneś ustawić wygląd w application:didLaunchWithOptions:.

+1

Świetna odpowiedź! Dzięki. – mrvincenzo

Powiązane problemy