UIViewController
在SwiftUI中使用 a我需要为两个按钮分配选择器。那些需要,@objc
但我得到了错误:
方法不能被标记为@objc,因为参数的类型不能在 Objective-C 中表示
struct ScanPreView: UIViewControllerRepresentable {
class Coordinator: NSObject {
var parent: ScanPreView
init(_ parent: ScanPreView) {
self.parent = parent
}
@objc func dismissPreviewedScanTapped(sender: ScanPreView) {
}
@objc func savePreviewedSceneTapped(sender: ScanPreView) {
}
}
func makeCoordinator() -> Coordinator {
Coordinator(self)
}
func makeUIViewController(context: Context) -> ScenePreviewViewController {
let preview = ScenePreviewViewController(pointCloud: pointCloud, meshTexturing: meshTexturing, landmarks: nil)
preview.leftButton.addTarget(context.coordinator, action: #selector(Coordinator.dismissPreviewedScanTapped(sender:)), for: UIControl.Event.touchUpInside)
preview.rightButton.addTarget(context.coordinator, action: #selector(Coordinator.savePreviewedSceneTapped(sender:)), for: UIControl.Event.touchUpInside)
return preview
}
}