UINavigationController того же цвета, что и ViewController - PullRequest
0 голосов
/ 14 мая 2018

В Swift 4.0 я пытаюсь применить тот же цвет для UINavigationBar, что и мой цвет viewController, короче говоря, я хочу прозрачную панель навигации, я испробовал все опции, но все еще не смог увидеть тот же цвет на панели навигации и viewController. (см. прикрепленное изображение)

self.navigationBar.backgroundColor = backGroundColor
self.navigationBar.barTintColor = backGroundColor
self.view.backgroundColor = backGroundColor

enter image description here

Я знаю, если я использую

self.navigationBar.setBackgroundImage(UIImage(), for: .default)
isTranslucent = false 

это создаст прозрачный фон, но список таблиц может отображаться на панели навигации при прокрутке вверх, чего я не хочу.

Любая другая опция доступна? Там, где панель навигации должна быть прозрачной, а список таблиц не должен отображаться в навигационной панели при прокрутке таблицы сверху.

Ценю вашу помощь.

1 Ответ

0 голосов
/ 14 мая 2018

Вы должны установить цвет таким образом, который будет выглядеть так же, как ваш желаемый цвет, после применения какого-либо эффекта с помощью UINavigationBar, вы можете добиться этого, изменив свой UINavigationBar цвет фона с новыми значениями, которые рассчитываются из вашего исходного цвета.

Вы можете получить это значение, используя приведенную ниже ссылку: http://htmlpreview.github.io/?https://github.com/tparry/Miscellaneous/blob/master/UINavigationBar_UIColor_calculator.html

Таким образом вы можете сохранить для своего свойства Translucent значение true и достичь того же результата, который вы хотите.

...