Я меняю цвета проекта, и этот старый оранжевый цвет не изменился на Кнопка UIActivityViewController. Я хочу изменить цвет кнопки оранжевый на белый. Это выглядит, когда пользователь нажимает кнопку «Поделиться» и выбирает кнопку «Добавить в заметки». Как я могу получить доступ к этим кнопкам и изменить цвет?
Первая проблема решена. Этот код работает с кнопками:
UIButton.appearance(whenContainedInInstancesOf: [UINavigationBar.self]).tintColor = .white
Когда я нажимаю на «Новая заметка», появляется этот вид. Как я могу изменить цвет заголовка в этом представлении? Я хочу изменить этот цвет заголовка черный к белому.
Это мой общий код, и я пробовал каждый цветовой код оттенка полосы.
func shareLink(_ link: String) {
let activityViewController = UIActivityViewController(activityItems: [link], applicationActivities: nil)
activityViewController.navigationController?.navigationBar.barTintColor = .white
activityViewController.navigationController?.navigationBar.tintColor = .white
activityViewController.tabBarController?.navigationItem.backBarButtonItem?.tintColor = .white
activityViewController.tabBarController?.navigationController?.navigationBar.tintColor = .white
self.present(activityViewController, animated: true)
}
Также я попытался добавить код на AppDelegate в функцию сделалFinishLaunchingWithOptions.
UINavigationBar.appearance().tintColor = .white
UIApplication.shared.keyWindow?.tintColor = .white
Вы пробовали что-то подобное? stackoverflow.com/a/47060512/6448167
@KSigWyatt Нет, я не пробовал. Это сработало, но я спросил, как мне получить доступ к этим кнопкам.
Эти кнопки недоступны. Apple создает кнопки в этом контроллере на основе локализации клиентского устройства. Поскольку stackoverflow.com/a/15294107/6448167 этот ответ предполагает, что вы можете переопределить и создать свой собственный UIActivityViewController
, чтобы изменить / получить доступ к содержимому кнопок на панели навигации контроллера.
@KSigWyatt Хорошо. Спасибо, но когда я нажимаю «Новая заметка», появляется какой-то черный заголовок. Как я могу изменить цвет тоже?
Ok. Эти кнопки недоступны. Итак, я решил проблему следующим образом:
Это для всех кнопок UINavigationBar:
UIButton.appearance(whenContainedInInstancesOf: [UINavigationBar.self]).tintColor = .white
Это для всех названий UINavigationBar:
UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName : UIColor.white]
@KSigWyatt Нет, это невозможно. Я не знаю, где я могу получить доступ к этой кнопке, и я спрашиваю.