sguruapp@gmail.com
facebook vk instagram Одноклассники youtube

Изменить NavigationBar (iOS 13 Navigation bar change) - Swift 5


Индивидуальное, дистанционное обучение программирование подробнее

// 1
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

UINavigationBar.appearance().tintColor = UIColor.black
return true
}

// 2
func changeNavBar(navigationController: UINavigationController?, color: UIColor) {
if #available(iOS 13.0, *) {
let navBarAppearance = UINavigationBarAppearance()

UINavigationBar.appearance().setBackgroundImage(UIImage(), for: UIBarMetrics.default)
navBarAppearance.backgroundColor = color
navBarAppearance.shadowColor = .clear

navigationController?.navigationBar.standardAppearance = navBarAppearance
navigationController?.navigationBar.compactAppearance = navBarAppearance
navigationController?.navigationBar.scrollEdgeAppearance = navBarAppearance

navigationController?.navigationBar.overrideUserInterfaceStyle = .unspecified
navigationController?.navigationBar.barTintColor = color
} else {
navigationController?.navigationBar.barTintColor = color
}
}

// Использование
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
changeNavBar(navigationController: navigationController, color: .red)
}

Возврат к списку

обучись профессии будущего

Хочешь стать успешным разработчиком
приложений? Тогда добро пожаловать к нам.

обучись профессии будущего