动画导航栏标题



我使用的是一个嵌套导航控制器,其中导航栏隐藏在通过主导航控制器添加的视图中。一切都很完美,除了当我更改部分并设置根导航控制器的标题时,它没有动画。

是否有动画导航栏标题?

旧问题的新答案,但仍然适用。如果您想在不同的标题字符串之间设置动画,请使用以下内容:

CATransition *animation = [CATransition animation];
fadeTextAnimation.duration = 0.5;
fadeTextAnimation.type = kCATransitionFade;
[self.navigationController.navigationBar.layer addAnimation: fadeTextAnimation forKey: @"fadeText"];
self.navigationItem.title = "My new title";

当然,您可以调整持续时间,并设置适合的计时功能。

据我所知,UINavigationBar/UINavigationItem上除了栏的大小,以及设置栏项并采用"animated:"参数的方法之外,什么都不能设置动画。

只需使用UIView动画代码。不知道它是否100%有效,但它应该!因此,在更改标题的方法中,执行[UIView animateWithDuration:0.5 animations:^{}]并更改其中的标题。希望这对你有用!

最新更新