Convert Swift to Objective-C

综合技术 2017-11-15

This question already has an answer here:

  • Is it possible to use Swift's Enum in Obj-C? 5 answers

I'd like to know how to convert the Swift enum just below to Objective-C:

enum MeatTemperature: Int {
    case Rare = 0, MediumRare, Medium, WellDone

    var stringValue: String {
        let temperatures = ["Rare", "Medium Rare", "Medium", "Well Done"]
        return temperatures[self.rawValue]
    }

    var timeModifier: Double {
        let modifier = [0.5, 0.75, 1.0, 1.5]
        return modifier[self.rawValue]
    }
}

Simply prefix the enum with @objc

@objc enum MeatTemperature: Int {
    case Rare = 0, MediumRare, Medium, WellDone

    var stringValue: String {
        let temperatures = ["Rare", "Medium Rare", "Medium", "Well Done"]
        return temperatures[self.rawValue]
    }

    var timeModifier: Double {
        let modifier = [0.5, 0.75, 1.0, 1.5]
        return modifier[self.rawValue]
    }
}

Check this - https://developer.apple.com/swift/blog/?id=22

您可能感兴趣的

Swift-可选值 Optional是Swift中的一种枚举类型,用来表达某个类型的可能值。 enum Optional { case none case some(Wrapped) } 表示方式 可选值遵守了 ExpressibleB...
让不懂编程的人爱上iPhone开发(2017秋iOS11+Swift4+Xcode9版)-第15篇... 使用web view替代 text view 关于界面的内容还可以继续优化。 现在我们可以尝试用web view(网页视图)来替代text view(文本视图)。 在Xcode中切换到Main.storyboard,然后选中关于界面中的文本视图,用delete键删掉它。然后...
Swift 结构体的使用 Swift 结构体是构建代码所用的一种通用且灵活的构造体。 我们可以为结构体定义属性(常量、变量)和添加方法,从而扩展结构体的功能。 与 C 和 Objective C 不同的是: 结构体不需要包含实现文件和接口。 结构体允许...
Swift 4.1 迁移小技巧 —— CompactMap Swift 4.1 中引入了一个“新”函数 compactMap ,在这里给大家介绍一个迁移的小技巧。 compactMap 的由来 在开始之前,先简单介绍一下 compactMap 的由来,我们都知道之前 flatMap 有两个重载版本,第一个是用来 flat 集合的: ...
【Swift 4.0】扩展 WCDB 支持 SQL 语句 前言 入坑 wcdb 有两个月了,整体来说还是很不错的,具体优点可以参考文档说明,由于官方明确说明不支持 SQL 只好自己写一个扩展支持一下了 :joy: 声明 欢迎转载,但请保留文章原始出处:) 博客园:http...