messageComposeViewController Swift 2中的错误

时间:2015-09-17 07:33:18

标签: ios swift swift2

以下代码适用于Swift 1.2。现在,我收到一个错误:

  

“MessageComposeResult类型的值没有成员'value'”

func messageComposeViewController(controller: MFMessageComposeViewController, didFinishWithResult result: MessageComposeResult) {
    switch (result.value) {
    case MessageComposeResultCancelled.value:
        print("Message was cancelled")
        self.dismissViewControllerAnimated(true, completion: nil)
    case MessageComposeResultFailed.value:
        print("Message failed")
        self.dismissViewControllerAnimated(true, completion: nil)
    case MessageComposeResultSent.value:
        print("Message was sent")
        self.dismissViewControllerAnimated(true, completion: nil)
    default:
        break;
    }
}

为了在Swift 2中找到消息的状态,我应该检查哪个结果成员?

2 个答案:

答案 0 :(得分:12)

在Swift 2中,value中不存在result

改为使用result.rawValue

答案 1 :(得分:0)

使用rawValue而不是值

   switch result.rawValue {
    case MessageComposeResult.Cancelled.rawValue:
        print("Message was cancelled")
        controller.dismissViewControllerAnimated(true, completion: nil)

    case MessageComposeResult.Failed.rawValue:
        print("Message failed")
        controller.dismissViewControllerAnimated(true, completion: nil)

    case MessageComposeResult.Sent.rawValue:
        print("Message was sent")
        controller.dismissViewControllerAnimated(false, completion: nil)

    default:
        break
        controller.dismissViewControllerAnimated(true, completion: nil)
    }