xcode 不符合协议“UIViewControllerRepresentable”

qyyhg6bp  于 2023-05-08  发布在  其他
关注(0)|答案(1)|浏览(254)

我正在完成在线苹果Xcode教程。在UIKit教程部分,我反复得到相同的错误:

"Type 'PageViewController<Page>' does not conform to protocol 'UIViewControllerRepresentable'"

该教程的这一部分是复制和粘贴的几行:

struct PageViewController<Page: View>: UIViewControllerRepresentable {
      var pages: [Page]
  }

我怎么能解决这个不符合协议。
网上有一些不符合协议的错误帖子,每个帖子似乎都以不同的方式解决了同一个错误。单击“修复错误”可将以下行添加到文件中:

"typealias UIViewControllerType = <#type#>"

这并没有解决这个问题,因为同样的错误发生。

ifsvaxew

ifsvaxew1#

你也应该实现存根,比如:

struct PageViewController<Page: View>: UIViewControllerRepresentable {
    typealias UIViewControllerType = UIViewController // <- Choose the correct controller

    func makeUIViewController(context: Context) -> UIViewControllerType {
        // Implement As needed
    }

    func updateUIViewController(_ uiViewController: UIViewControllerType, context: Context) {
        // Implement As needed
    }

    var pages: [Page]
}

相关问题