ios - 自定义转换给出 "Unbalanced calls to begin/end appearance transitions"错误

标签 ios xcode swift uistoryboard uianimation

我使用下面显示的代码以无缝滑动方式呈现新的 View Controller 。实际的动画效果很好,但是当动画结束时,所有的 View 都消失了,我只剩下一个空白屏幕。控制台中显示错误

“对 < Rocket_Game18GameViewController: 0x155e288f0 > 开始/结束外观转换的不平衡调用”

class SlideRightToLeft: UIStoryboardSegue {
override func perform() {
    var sourceVC:UIViewController = self.sourceViewController as UIViewController
    var destVC:UIViewController  = self.destinationViewController as UIViewController

    let sourceVCFrame = sourceVC.view.frame
    let width = destVC.view.frame.size.width
    sourceVC.view.addSubview(destVC.view)
    destVC.view.frame = CGRectOffset(sourceVCFrame, width, 0)

    UIView.animateWithDuration(1.5, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: {
        sourceVC.view.frame = CGRectOffset(sourceVCFrame, -width, 0)
        }, completion: {
            finished in
            destVC.view.removeFromSuperview()
            sourceVC.presentViewController(destVC, animated: false, completion: nil)
        })
    }
}

请询问您是否需要更多信息,谢谢!

最佳答案

我现在已经通过将其他人的 objective-c 代码转换为 swift 来弄清楚我做错了什么。事实证明,我的整个自定义动画想法都是错误的,当 iOS7 发布时,他们改变了它的实现方式。这是我找到解决方案的博客链接,以防其他人想看到它

https://github.com/jbradforddillon/TransitioningExample

关于ios - 自定义转换给出 "Unbalanced calls to begin/end appearance transitions"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24918075/

相关文章:

iOS 重现一个 View n 次

iphone - 将 iPhone 或 iPod 变成无线网络摄像头

ios - 在 xcode 中查找具有图像名称的图像

iphone - 如何使表格 View 单元格作为按钮工作?

ios - 如何在 SwiftUI 中为单行文本设置行高?

ios - UITextField 未显示在 View 中

ios - UIPickerView 内容意外流动

iphone - IOS - XCode 4 - iPhone 6.0 - 将后退按钮添加到 subview

swift - 如何在 Swift 中返回自定义错误?

ios - 如何让 View Controller 知道它应该从服务器获取数据?