Swift 如何绕过不完整的segue错误

Swift 如何绕过不完整的segue错误,swift,xcode,Swift,Xcode,我想我在Xcode本身遇到了一个bug,希望能找到一些帮助来绕过这个问题。我有一个视频播放与AVKit,我想切换到另一个视图控制器时,它完成。我发现在调用segue之前,视频视图控制器必须关闭,所以我补充说。视频的结尾与新的视图控制器相匹配,因此我希望切换平滑,因此我设置了动画:false for The Dismission,这就是问题的原因。如果动画设置为true,则segue运行正常,但如果设置为false,则segue未完全完成,视频被禁用,我可以看到旧的视图控制器,segue仅在我点击

我想我在Xcode本身遇到了一个bug,希望能找到一些帮助来绕过这个问题。我有一个视频播放与AVKit,我想切换到另一个视图控制器时,它完成。我发现在调用segue之前,视频视图控制器必须关闭,所以我补充说。视频的结尾与新的视图控制器相匹配,因此我希望切换平滑,因此我设置了动画:false for The Dismission,这就是问题的原因。如果动画设置为true,则segue运行正常,但如果设置为false,则segue未完全完成,视频被禁用,我可以看到旧的视图控制器,segue仅在我点击屏幕并显示新的视图控制器时生效。 这是密码

animPlayer.dismiss(animated: false)

self.performSegue(withIdentifier: "BackpackSegue", sender: self)
更奇怪的是,该代码在物理ipad上运行得非常好,所以它一定是一个模拟器bug


编辑:这是整个swift文件,我是新来的,所以告诉我你是否需要项目中的其他东西

import UIKit
import AVKit

class FrontDoorOpen: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

    }
    }
    */
    override var prefersStatusBarHidden: Bool{
        return true
    }
    @IBOutlet weak var SegueImage: UIImageView!
    let animPlayer = AVPlayerViewController()

    @IBAction func DoorCloseSegue(_ sender: Any) {
        if let path = Bundle.main.path(forResource: "DoorClose", ofType: "avi", inDirectory: "SegueAnimations")
        {
            let SegueAnimation = AVPlayer(url: URL(fileURLWithPath: path))


            animPlayer.player = SegueAnimation
            animPlayer.showsPlaybackControls = false
            animPlayer.videoGravity = AVLayerVideoGravity.resizeAspectFill
             NotificationCenter.default.addObserver(self, selector: #selector(self.finishVideo), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: nil)

            present(animPlayer, animated: false, completion:
        {
                SegueAnimation.play()
        })
        }
        SegueImage.isHidden = false
    }
    @objc func finishVideo()
    {
        animPlayer.dismiss(animated: false)
        // Simulator Pauses Here !!
        self.performSegue(withIdentifier: "DoorCloseSegue", sender: self)

    }
}

在进行了更多的实验后,模拟器似乎在退出和退出之间暂停,退出只需单击一下即可发生。请共享更多代码以获得更好的解释?这是完整的swift文件,我是新手,因此如果您需要项目中的其他内容,请告诉我。