ios - 如何将字符串值转换为枚举

标签 ios swift enums

如何将String值转换为String类型的枚举?

我的枚举定义如下:

enum TemplateSlotType : String {
    case Default = ""
    case Recommendation = "recommendation"
}

我想将字符串“recommendation”转换为类型。Recommendation

最佳答案

我没有在Stack Overflow上找到答案,但是找到了答案。

这也适用于其他枚举类型:

enum Lets : String {
    case X = "x"
    case Y = "y"
    case Z = "z"
}

var zz = Lets.fromRaw("z")
zz! == .Z // true
println(Lets.Y.toRaw())

有关更多信息,请结帐:http://ericasadun.com/2014/08/27/swift-converting-values-to-enumerations/

我的最终实现:
if let slotType = json["type"].object as? String {
    type = TemplateSlotType(rawValue: slotType)!
}

关于ios - 如何将字符串值转换为枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27355374/

相关文章:

ios - 在自定义类中初始化日期会导致错误 : "instance member cannot be used on type"

swift - 如何检查代码是否在 Today Extension 或 App 中运行

ios - 如何将 messageCell 放在 tableView 的底部? * swift *

c# - 值为 0x0001 的枚举?

ios - 如何将操作连接到以编程方式创建的 UIbutton

ios - 使用按钮将文本添加到 UITableViewcell 中包含的文本字段值

ios - 解析 JSON Swift

Java 枚举作为整数、扫描仪和菜单选项

java - Enum#values() 是否在每次调用时分配内存?

ios - 属于两个团队的 Apple id 帐户获得 "Your account already has a valid iOS Distribution certificate"