我在應用程序中實現了一個主題,並遇到了一個奇怪的錯誤(功能?)。出於某種奇怪的原因,我不能在我的自定義UITabBarController類中使用UIView.animate
來動畫我的UITabBar的顏色變化,但相同的確切代碼在我的UINavigationController的自定義類中完美地工作。它是如何使UINavigationBar的條形顏色變化而不是UITabBar動畫的?
我錯過了什麼嗎?有什麼我可以用來動畫顏色變化?我瀏覽過蘋果文檔,但什麼都沒發現。
下面是我用在這兩種情況下的代碼:
class customNavigationController: UINavigationController {
@IBOutlet weak var navBar = ThemeManager.navigationbar
func dusk(notification: NSNotification) {
UIView.animateWithDuration(1, animations: {
self.navBar?.barTintColor = UIColor(red: 79/255, green: 79/255, blue: 79/255, alpha: 1)
self.navBar?.barStyle = UIBarStyle.Black
})
}
}
和:
class customTabController: UITabBarController {
@IBOutlet weak var tab = ThemeManager.tabbar
func dusk(notification: NSNotification) {
UIView.animateWithDuration(1, animations: {
self.tab?.barTintColor = UIColor(red: 79/255, green: 79/255, blue: 79/255, alpha: 1)
self.tab?.barStyle = UIBarStyle.Black
})
}
}
這對動畫沒有任何影響:( – cyril
這很奇怪,在我發佈之前我自己試過了,你能分享一下你的代碼嗎? –
這和上面第二個引用的代碼是一樣的。我替換了'UIView.animateWithDuration(1,動畫:{self.tab?.barTintColor = UIColor(red:79/255,green:79/255,blue:79/255,alpha:1) self.tab ?. barStyle = UIBarStyle.Black })' – cyril