Alp*_*ulf 5 xcode ios swift swiftui
不确定我是否遗漏了某些内容或发现了 SwiftUI 错误。这是一件如此简单的事情,却让我发疯。
尝试设置 UIViewControllerRepresentable 但出现以下错误:
非最终类(“VideoAnswerWrapper”)无法满足协议“View”要求“_makeView(view:inputs:)”,因为它在非参数、非结果类型位置使用“Self”
非最终类(“VideoAnswerWrapper”)无法满足协议“View”要求“_makeViewList(view:inputs:)”,因为它在非参数、非结果类型位置使用“Self”
我试过了:
这是我的 UIViewControllerRepresentable 类:
import SwiftUI
class VideoAnswerWrapper: UIViewControllerRepresentable {
typealias UIViewControllerType = VideoAnswerViewController
private var question : Question!
init(question: Question?) {
guard let question = question else {fatalError()}
self.question = question
}
func makeUIViewController(context: UIViewControllerRepresentableContext<VideoAnswerWrapper>) -> VideoAnswerViewController {
let storyboard = UIStoryboard(name: "VideoAnswer", bundle: .main)
//Downcast returned controller to the requried type
guard let viewController = storyboard.instantiateInitialViewController() as? VideoAnswerViewController else { fatalError() }
//Assign selected question object to instance property on incoming viewController.
// viewController.question = question
return viewController
}
func updateUIViewController(_ uiViewController: VideoAnswerViewController, context: UIViewControllerRepresentableContext<VideoAnswerWrapper>) {
}
}
Run Code Online (Sandbox Code Playgroud)
UIViewController(我已经剥离了所有功能以隔离错误)
import UIKit
class VideoAnswerViewController: UIViewController {
}
Run Code Online (Sandbox Code Playgroud)
Asp*_*eri 12
Run Code Online (Sandbox Code Playgroud)class VideoAnswerWrapper: UIViewControllerRepresentable { typealias UIViewControllerType = VideoAnswerViewController
上面的内容旨在呈现一个 SwiftUI View,因此必须是如下结构
struct VideoAnswerWrapper: UIViewControllerRepresentable {
typealias UIViewControllerType = VideoAnswerViewController
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2268 次 |
| 最近记录: |