UIImagePickerController Цвет панели навигации Оттенок не работает с iOS 13

#swiftui #uiimagepickercontroller

Вопрос:

Я представляю модальный контроллер, который является UIImagePickerController.

Я пытаюсь изменить UIImagePickerController оттенок навигационных панелей.

До iOS13 это работало нормально;

 imagePickerController.navigationBar.tintColor = .red
 

Я также пытался;

 imagePickerController.navigationController?.navigationBar.tintColor = .red
 

но все равно никакой радости.

Что я могу попробовать дальше?

Комментарии:

1. У меня была та же проблема. У меня еще не было возможности попробовать это, но одно решение, которое я планирую, — использовать UINavigationBar appearance непосредственно перед созданием средства выбора изображений, а затем сбросить внешний вид при отключении средства выбора изображений.

2. Это работает! Хазаар!

3. Вы должны опубликовать ответ ниже с вашей полной реализацией.

Ответ №1:

Это было решено с помощью решения rmaddy в комментариях.

в AppDelegate реализации;

 func configureGlobalUI() {
    UINavigationBar.appearance().tintColor = .red
}
 

тогда позвони didFinishLaunchingWithOptions

Это работает так, как мне требуется tintColor , по всей navigationBar видимости.

Комментарии:

1. Это касается всего приложения, что делать, если нам нужно изменить только для определенного ViewController. т. е. UIImagePickerController. Заранее спасибо.

Ответ №2:

Вы можете просто сделать UIView размером панели навигации, поместить его под панель навигации и сделать панели навигации цветными альфа=0. Я надеюсь, что это помогло. 🙂