SwiftUI通过Coordinator和UIViewControllerRepresentable发送短信
如何使用UIViewControllerRepresentable编写以下代码? 我想使用UIViewControllerRepresentable。我希望我写的代码是规则的。您认为使用UIViewControllerRepresentable编写此代码有意义吗SwiftUI通过Coordinator和UIViewControllerRepresentable发送短信,swiftui,uiviewcontrollerrepresentable,coordinator,Swiftui,Uiviewcontrollerrepresentable,Coordinator,如何使用UIViewControllerRepresentable编写以下代码? 我想使用UIViewControllerRepresentable。我希望我写的代码是规则的。您认为使用UIViewControllerRepresentable编写此代码有意义吗 import MessageUI class ViewController: UIViewController, MFMessageComposeViewControllerDelegate {
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){
}
}
代码块中的代码与屏幕截图中的代码如何关联?如果测试需要,不要在屏幕截图中发布代码——很难有人想重新键入代码,所以你们不会得到答案。代码块中的代码与屏幕截图中的代码有什么关系?如果测试需要,不要在屏幕截图中发布代码——几乎不可能有人想重新键入代码,所以你们不会得到答案。