UIActivityViewController: доступ к элементам навигации для изменения цвета представленного представления - PullRequest
0 голосов
/ 28 мая 2019

Я изменяю цвета проекта, и этот старый оранжевый цвет не изменяется при UIActivityViewController button . Я хочу изменить цвет кнопки с оранжевого на белый. Это выглядит, когда пользователь нажимает кнопку «Поделиться» и выбирает кнопку « Добавить в заметки ». Как я могу получить доступ к этим кнопкам и изменить цвета?

Add to Notes Screen

Первая проблема решена. Этот код работает на кнопках:

UIButton.appearance(whenContainedInInstancesOf: [UINavigationBar.self]).tintColor = .white

Когда я нажимаю « Новая заметка », этот взгляд приходит. Как изменить цвет заголовка в этом представлении? Я хочу изменить этот цвет заголовка черный на белый .

enter image description here

Это мой код обмена, и я пробовал каждый цветовой оттенок штрихового оттенка.

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 в didFinishLaunchingWithOptions function

UINavigationBar.appearance().tintColor = .white
UIApplication.shared.keyWindow?.tintColor = .white

1 Ответ

0 голосов
/ 29 мая 2019

Хорошо. Эти кнопки не доступны. Поэтому я решил проблему следующим образом:

Это для всех кнопок UINavigationBar:

UIButton.appearance(whenContainedInInstancesOf: [UINavigationBar.self]).tintColor = .white

Это для всех заголовков UINavigationBar:

UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName : UIColor.white]
...