我怎么能在动画的UIViewController推UINavigationBar的背景变化?(how

2019-06-24 23:58发布

我的应用程序使用两个不同背景的UINavigationBar的,以指示他们在什么样的水平层次结构中的用户。 当我把需要它缺少动画的第二个背景一个UIViewController,背景马上尽快的UIViewController推变化。 我怎么能这样的动画,这样的看法正在发生变化的背景变化消失?

Answer 1:

我知道这是一个古老的线程,但这个工作对我来说:

CATransition *transition = [CATransition animation];
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
transition.type = kCATransitionFade;
transition.duration = 0.5;

[self.navigationController.navigationBar.layer addAnimation:transition forKey:nil];
[self.navigationController.navigationBar setBackgroundImage:[[UIImage imageNamed:@"navigationbar.png"]resizableImageWithCapInsets:UIEdgeInsetsMake(44, 20, 44, 20)] forBarMetrics:UIBarMetricsDefault];        

将这个里面你viewDidLoad的方法。 你将需要链接/导入QuartzCore框架。



文章来源: how can I animate the UINavigationBar background change on UIViewController push?