3
Недавно я перешел из Swift 2 в Swift 3, и я застрял на одной части. В моем AppDelegate я установил настройки по умолчанию для UINavigationBar, как указано ниже. Проблема, с которой я сталкиваюсь, заключается в том, что setBackgroundImage больше не распознается в Swift 3, и я не могу найти альтернативы.Swift 3: Как настроить UINavigationBar setBackgroundImage в AppDelegate
Неужели кто-то имел такую же проблему и смог ее решить?
let turquoiseBackgroundImage:UIImage = UIImage(named: "navigationBarTurqoise")!
**// TODO Below is not working with Swift 3
UINavigationBar.appearance().setBackgroundImage(turquoiseBackgroundImage, forBarPosition: .Default)**
// Set up Back button to be white in Navigation bar
UINavigationBar.appearance().barStyle = UIBarStyle.default
UINavigationBar.appearance().tintColor = UIColor.white
// Font Name and Size of Title in Navigation Bar
if let font = UIFont(name: "TitilliumWeb-Light", size: 20) {
UINavigationBar.appearance().titleTextAttributes = [NSFontAttributeName : font, NSForegroundColorAttributeName : UIColor.white]
}
// Remove hairline between navigation bar and anything below such as search bar
UINavigationBar.appearance().shadowImage = UIImage()
// Set up status bar (battery, time, etc.) to white
UIApplication.shared.statusBarStyle = .lightContent
Swift декларации 'Func setBackgroundImage (_ изображение: UIImage ?, для государства: UIControlState)' https://developer.apple.com/reference/uikit/uibutton/1624016-setbackgroundimage, поэтому попробуйте 'setBackgroundImage (turquoiseBackgroundImage, для: .default) *' –
** Подсказка: ** В следующий раз просто позвольте Xcode автоматически завершить его для вас. –
Да, я попробовал автозаполнение, однако функции UITAVBackgroundImage вообще нет в UINavigationBar.appearance() .. Существует функция setBackgroundImage под UINavigationBar напрямую, но в качестве аргумента она принимает 10 UINavigationBar. Делает не имеет смысла? UINavigationBar.setBackgroundImage (<# T ## UINavigationBar #>) –