UINavigationBar的自定义动画setItems / pushNavigationItem / popNavigationItem?

时间:2014-07-15 04:33:33

标签: ios objective-c animation

我在常规UINavigationBar(而不是UIViewController)中使用UINavigationController并使用setItems:animatedpushNavigationItem:animated更新导航栏的内容和popNavigationItem:animated,动画设置为YES。 工作正常,除了我想要导航栏的交叉淡入淡出动画,而不是将前一个栏“推”向左或向右的内置动画。

到目前为止,我能看到如何执行此操作的唯一方法是使用setLeftBarButtonItems:animatedsetRightBarButtonItems:animated手动设置栏的标题,左右内容,并且可能是自定义视图标题为setTitleView,以便我可以进行交叉渐变。 任何人都有更好的解决方案来解决我的问题吗?

1 个答案:

答案 0 :(得分:1)

试过这个并且它有效:

[UIView transitionWithView:self.navBar duration:2.0f options:UIViewAnimationOptionTransitionCrossDissolve animations:^{

        myNavigationItem.leftBarButtonItem = newLeftItem;
        myNavigationItem.rightBarButtonItem = newRightItem;
        myNavigationItem.title = @"My New Title";
    } completion:nil];