Изменение глобального оттенка цвета-iOS7/iOS8
Как мы можем изменить глобальный оттенок цвета на iOS7 / iOS8 в коде? Я хочу изменить несколько объектов, которые используют это свойство, но не изменить каждый из них, поэтому я хочу использовать глобальное свойство tint.
5 ответов:
просто изменить
UIWindow
' stintColor
в делегате приложения он автоматически передается по умолчанию всем егоUIView
потомки.[self.window setTintColor:[UIColor greenColor]];
есть два способа изменить свой глобальный оттенок цвета. Как многие упомянутые выше вы могли бы изменить
self.window.tintColor
на-application:didFinishLaunchingWithOptions:
.более элегантный способ, на мой взгляд, является задание Глобальные Подкраска на Файл Инспектор в раскадровке пока ничего не выбрано. Таким образом, ваш
-application:didFinishLaunchingWithOptions:
чище.
вы можете указать цвет оттенка для всего приложения, установив свойство оттенка окна. Для этого можно использовать следующий код:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window.tintColor = [UIColor purpleColor]; return YES; }
обновлено для Swift 2.2
Вы можете сделать это из любого места, как это:
// Get app delegate let sharedApp = UIApplication.sharedApplication() // Set tint color sharedApp.delegate?.window??.tintColor = UIColor.green()
или если вы пытаетесь сделать это из AppDelegate,
//self.window?.tintColor = UIColor.green()