我想在基於UINavigationController的應用程序上恢復我的動畫。 在viewWillAppear
我做了以下內容:UINavigationController UIApplicationDidBecomeActiveNotification後的奇怪行爲
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
self.animateButtons()
}
我還添加了這些:
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(addAnimation), name: UIApplicationDidBecomeActiveNotification, object: nil)
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(restorePosition), name: UIApplicationDidEnterBackgroundNotification, object: nil)
這是我的開始/恢復動畫:
func addAnimation() {
self.animateButtons()
}
func restorePosition() {
self.restoreToOriginalPosition()
}
於是解釋:當控制器被加載我創建我的按鈕self.makeRoundQButtons
在我的viewDidLoad
。然後我在viewWillAppear
中生成動畫。
然後進入後臺時我恢復原來的位置self.restoreToOriginalPosition()
我又它們的動畫曾經活躍func addAnimation() {...}
...
現在能正常工作的「積極」的看法。當我在導航樹上「鑽取」時,輸入背景並重新激活,並使用「後退」按鈕導航到任何「前一個」視圖,但調用viewWillAppear
時不會發生任何動畫。如果我前進,然後再回來一切正常......
我做錯了什麼?