快速呈现自定义ViewController类?

问题描述

我正在尝试提供一个SwiftyCam视图控制器(https://github.com/Awalz/SwiftyCam),但是在尝试呈现它时出现SIGABRT错误。我认为是因为该类的类型为SwiftyCamViewController而不是UIViewController,如何呈现视图控制器而不会崩溃?

let vc = self.storyboard?.instantiateViewController(withIdentifier: "VideoTapingVC") as! VideoTapingVC
self.present(vc,animated: true)

class VideoTapingVC: SwiftyCamViewController,SwiftyCamViewControllerDelegate {
    
    let captureButton = SwiftyCamButton(frame: CGRect(x: 100,y: 400,width: 70,height: 70))
    override func viewDidLoad() {
        super.viewDidLoad()
        captureButton.delegate = self
        defaultCamera = .front
        doubleTapCameraSwitch = true
    }
    func swiftyCam(_ swiftyCam: SwiftyCamViewController,didBeginRecordingVideo camera: SwiftyCamViewController.CameraSelection) {
        
    }
    func swiftyCam(_ swiftyCam: SwiftyCamViewController,didSwitchCameras camera: SwiftyCamViewController.CameraSelection) {
    }
    func swiftyCam(_ swiftyCam: SwiftyCamViewController,didFinishProcessVideoAt url: URL) {
    }
}

这是尝试显示时的错误:

Could not cast value of type 'UIViewController' (0x1e882f178) to 'databaseProject.VideoTapingVC' (0x10487f290).

解决方法

该错误消息描述了UIViewController。我相信这是因为您忘记在情节提要中的身份检查器中输入视图控制器类型。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...