xcode 6 beta 4 - MessageComposeResult不能转换为OptionalNilComparisonType

nau*_*naj 8 ios swift xcode6

我刚刚从Xcode 6 Beta 3升级到Beta 4.在3我的应用程序完美编译然而在4我有以下错误.任何人都可以解释并提供解决方案.

func messageComposeViewController(sendMsg: MFMessageComposeViewController, didFinishWithResult result: MessageComposeResult) {

    switch result {

    case MessageComposeResultSent :    //Error: MessageComposeResult is not convertible to _OptionalNilComparisonType
        label2.text = "Msg Sent"

    case MessageComposeResultCancelled : //Error: MessageComposeResult is not convertible to _OptionalNilComparisonType
        label2.text = "Msg Send Cancelled"

    case MessageComposeResultFailed :   //Error: MessageComposeResult is not convertible to _OptionalNilComparisonType
        label2.text = "Msg Send Failed"

    default:
        label2.text = "Msg Error"

    }

    self.dismissViewControllerAnimated(true, completion: nil)
    self.reloadInputViews()

}
Run Code Online (Sandbox Code Playgroud)

小智 22

func messageComposeViewController(controller: MFMessageComposeViewController!, didFinishWithResult result: MessageComposeResult) {

    switch result.value {

    case MessageComposeResultSent.value :
        println("enviado")

    case MessageComposeResultCancelled.value :
        println("cancelado")

    case MessageComposeResultFailed.value :
        println("fallo")

    default:
        println("")

    }

}
Run Code Online (Sandbox Code Playgroud)


mat*_*att 3

这是该模块桥接到 Swift 的方式中的一个错误。报告一下。要使用该模块,请继续使用 Objective-C,直到修复 Swift 桥接错误。

在我看来,该错误的主要部分是:

  • 这应该是一个枚举,但事实并非如此;这是一个结构

  • 该结构体有一个value,它应该能够进行比较,但它没有 getter (您可以在初始化时设置它,但稍后无法获取它)