按下某个控制器时,我正在更改导航栏的背景图像。我想动画化这种变化。我可以使用以下代码来做到这一点:
[UIView transitionWithView:self.navigationController.navigationBar
duration:0.3f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"now-playing-nav-bar.png"]
forBarMetrics:UIBarMetricsDefault];
} completion:NULL];
但是,这会阻止应用到navigationBarTitle
和UIBarButtonItem
s 的默认推送动画。
如何让背景更改和推送动画协同工作?
我更喜欢香草的解决方案。
PS:我不能使用tintColor
,因为背景是有纹理的。