SwiftUI通过Coordinator和UIViewControllerRepresentable发送短信

SwiftUI通过Coordinator和UIViewControllerRepresentable发送短信,swiftui,uiviewcontrollerrepresentable,coordinator,Swiftui,Uiviewcontrollerrepresentable,Coordinator,如何使用UIViewControllerRepresentable编写以下代码? 我想使用UIViewControllerRepresentable。我希望我写的代码是规则的。您认为使用UIViewControllerRepresentable编写此代码有意义吗 import MessageUI class ViewController: UIViewController, MFMessageComposeViewControllerDelegate {

如何使用UIViewControllerRepresentable编写以下代码? 我想使用UIViewControllerRepresentable。我希望我写的代码是规则的。您认为使用UIViewControllerRepresentable编写此代码有意义吗

 import MessageUI
    
    class ViewController: UIViewController, MFMessageComposeViewControllerDelegate {
    
        @IBOutlet weak var phoneNumber: UITextField!
    
        override func viewDidLoad() {
            super.viewDidLoad()
        }
    
        @IBAction func sendText(sender: UIButton) {
            if (MFMessageComposeViewController.canSendText()) {
                let controller = MFMessageComposeViewController()
                controller.body = "Message Body"
                controller.recipients = [phoneNumber.text]
                controller.messageComposeDelegate = self
                self.presentViewController(controller, animated: true, completion: nil)
            }
        }
    
        func messageComposeViewController(controller: MFMessageComposeViewController!, didFinishWithResult result: MessageComposeResult) {
            //... handle sms screen actions
            self.dismissViewControllerAnimated(true, completion: nil)
        }
    
        override func viewWillDisappear(animated: Bool) {
            self.navigationController?.navigationBarHidden = false
        }
    }
SMSViewController

 struct SMSViewController: UIViewControllerRepresentable {
        
        class Coordinator: NSObject, MFMessageComposeViewControllerDelegate {
            
            func messageComposeViewController(_ controller: MFMessageComposeViewController, didFinishWith result: MessageComposeResult) {
                
            }
            var parent: MFMessageComposeViewController
            
            init(_ parent: MFMessageComposeViewController) {
                self.parent = parent
            }
        }
        
        func makeCoordinator() -> Coordinator {
            Coordinator(self)
        }
        
        func makeUIViewController(context: UIViewControllerRepresentableContext<MFMessageComposeViewController>) -> MFMessageComposeViewController {
            let messageViewController = MFMessageComposeViewController()
            messageViewController.delegate = context.coordinator
            return messageViewController
        }
        func updateUIViewController(_ uiViewController: UIViewControllerType, context: Context) {
            
        }
    }
结构SMSViewController:UIViewControllerRepresentable{ 类协调器:NSObject,MFMessageComposeViewControllerDelegate{ func messageComposeViewController(\控制器:MFMessageComposeViewController,didFinishWith result:MessageComposeResult){ } 变量父级:MFMessageComposeViewController init(uu父项:MFMessageComposeViewController){ self.parent=parent } } func makeCoordinator()->Coordinator{ 协调员(自我) } func makeUIViewController(上下文:UIViewControllerRepresentableContext)->MFMessageComposeViewController{ 让messageViewController=MFMessageComposeViewController() messageViewController.delegate=context.coordinator 返回消息视图控制器 } func updateUIViewController(uViewController:UIViewControllerType,context:context){ } }
代码块中的代码与屏幕截图中的代码如何关联?如果测试需要,不要在屏幕截图中发布代码——很难有人想重新键入代码,所以你们不会得到答案。代码块中的代码与屏幕截图中的代码有什么关系?如果测试需要,不要在屏幕截图中发布代码——几乎不可能有人想重新键入代码,所以你们不会得到答案。