我试图通过脚本实例化将pageViewController本身添加到控制器中的视图中,但产生了以下错误代码
视图控制器

func instantiate(){

    let pageController = storyboard?.instantiateViewController(withIdentifier: String(describing:PageViewController.self)) as! PageViewController

    addChild(pageController)
    pageController.didMove(toParent: self)
    pageController.view.translatesAutoresizingMaskIntoConstraints = false
    contentView.addSubview(pageController) // error Cannot convert value of type 'PageViewController' to expected argument type 'UIView'

    let views:[String:Any] = ["pageView":pageController.view]
    contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-0-[pageView]-0-|", options: NSLayoutConstraint.FormatOptions(rawValue: 0), metrics: nil, views: views))
    contentView.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-0-[pageView]-0-|", options: NSLayoutConstraint.FormatOptions(rawValue: 0), metrics: nil, views: views))
}

最佳答案

PageController从UIViewController继承。你所做的就是添加一个视图。这就是为什么您得到一个错误,因为参数不是UIView。
添加嵌入其中的视图,而不是添加pageviewcontroller。将行更改为contentView.addSubview(pageController.view)

关于ios - 在其他Controller的 View 中添加pagecontroller View 时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58008623/

10-11 04:26