你不會相信我經歷了真正實現這個目標的長度;它讓我感到懊惱不已,這不是股票iOS功能,而tintColor的過渡看起來很醜,而推動/彈出viewController的動畫非常流暢。
There'a很多代碼檢查時淡入淡出,我甚至寫了一個名爲PSPDFNavigationAppearanceSnapshot的類來保存導航狀態時彈出。 (我有這個想法從真棒NimbusKit)
實際的動畫是很容易的:
[self.navigationController.navigationBar.layer addAnimation:PSPDFFadeTransition() forKey:nil];
CATransition *PSPDFFadeTransition(void) {
return PSPDFFadeTransitionWithDuration(0.25f);
}
CATransition *PSPDFFadeTransitionWithDuration(CGFloat duration) {
CATransition *transition = [CATransition animation];
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionFade;
transition.duration = duration;
return transition;
}
您可以更加緊湊的代碼;它是從我的iOS PDF庫PSPDFKit中剪下來的,並且我在各個地方使用了淡入淡出,因此也是幫助函數。
如果你看到這個帖子,這是歷史,我們發現在另一個線程的解決方案:http://stackoverflow.com/questions/20377628/transition-color/20396308?noredirect=1# 20396308 – Pull 2013-12-05 10:02:36