У меня есть UIAlertController со стилем ActionSheet. Есть 2 варианта. Когда пользователь выбирает кого-либо из них, он отображает Apple, встроенный в UIActivityViewController. Проблема, с которой я сталкиваюсь, заключается в том, что когда пользователь выбирает сообщение или почту и другие, кнопки навигационной панели темно-синие, а строка состояния черная. Я хочу, чтобы кнопки были белыми, а строка состояния была белой. Единственное, что работает правильно, это то, что цвет панели навигации синий, который я установил в делегате приложения.Пользовательский цвет для кнопки панели навигации и StatusBar для UIActivityViewController
код у меня есть в App Делегат:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Nav Bar
UINavigationBar.appearance().translucent = false
UINavigationBar.appearance().opaque = true
UINavigationBar.appearance().barTintColor = primaryBlueColor
UINavigationBar.appearance().tintColor = UIColor.whiteColor()
// Status Bar
UIApplication.sharedApplication().statusBarHidden = false
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
}
Когда я представляю UIActivityViewController, я могу настроить цвет кнопки «Отмена» для нестандартного синего цвета. Но опять же, когда пользователь нажимает сообщение или какие-либо другие параметры, он переходит на новый экран, а цвета неправильны. Это то, что у меня есть:
let activityController = UIActivityViewController(activityItems: [textFile], applicationActivities: nil)
self.presentViewController(activityController, animated: true, completion: nil)
activityController.view.tintColor = primaryBlueColor
EDIT на вопрос 1:
Я только что нашел ответ на кнопки, чтобы изменить цвет белый. Теперь все, что отсутствует, - это строка состояния, которая станет белой. Это то, что я добавил к вышеприведенному методу делегирования приложений.
UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UINavigationBar.classForCoder()]).tintColor = UIColor.whiteColor()
Любые предложения для строки состояния?
Он работает! Спасибо. Кажется, что проблема с цветами кнопок. Если я нажму «Сообщение», кнопки будут белыми. Но если я нажму Почта, на новом экране появятся синие кнопки. Любая идея почему? – Tyler
Попробуйте очистить и перестроить. Кроме того, для меня кнопка «Отправить» в Mail была неактивна, пока я не набрал адрес получателя. Или проблема, с которой вы сталкиваетесь? – ZGski
Я пробовал очистить и перестроить, и все равно ничего. Кнопка «Отмена» и «Отправить» является синей. Даже когда я набираю текст, кнопка «Отправить» синяя. Что касается Послания, это прекрасно. Не уверен, что это отдельная проблема. Любая идея почему? У вас была эта проблема? – Tyler