ios - 在 iOS 7 的 UINavigationController 上推送 View 时如何交叉融合?

标签 ios cocoa-touch

如果我简单地调用 push 方法:

[self.navigationController pushViewController:viewController animated:YES];

然后它使用推送动画。我如何更改它以使用交叉溶解动画,就像我可以使用模态转场一样?

最佳答案

我使用扩展以便于重用:

extension UINavigationController {
    func fadeTo(_ viewController: UIViewController) {
        let transition: CATransition = CATransition()
        transition.duration = 0.3
        transition.type = CATransitionType.fade
        view.layer.add(transition, forKey: nil)
        pushViewController(viewController, animated: false)
    }
}

注意 animated 是多么的假;当您将其设置为 true 时,您仍然会看到标准的“插入”动画(从右到左)。

关于ios - 在 iOS 7 的 UINavigationController 上推送 View 时如何交叉融合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23530538/

相关文章:

iphone - 带有 subview 的可变 UITableCellView 高度

ios - 在 UITableView 中设置滚动位置

ios - 每周切换一个存储的标志

iphone - 外部 UITableView 委托(delegate)如何隐藏 UISearchBar 键盘?

ios - 从 cellForRowAtIndexPath 返回两个不同的单元格

ios - 蓝牙和 iOS - 支持哪些协议(protocol)/配置文件?

ios - 更改高度时如何在单元格中显示标签 View 的全文

iphone - 如何将自定义数组保存/重新加载到 plist

ios - Xamarin表格显示温度值

ios - 为什么从 ViewController 转到 TableViewController 时我会不断收到此错误?