如何使用ObjectMapper将枚举的rawValue赋值给变量?

Rad*_*far 29 swift alamofire objectmapper

您好我在Swift中使用带有Alamofire的Object Mapper,我正在尝试将枚举原始值映射到真实的Enum.

这是我的枚举,也是我试图在函数映射中使用的代码.你能帮我解决一下EnumTransform的参数或如何修改代码吗?我知道我可以将值读作字符串并使用LevelType(rawValue:stringValue).

提前致谢.

enum LevelType : String {
    case NEW = "NEW"
    case UPDATE = "UPDATE"
}

func mapping(map: Map) {
    typeEnum <- (map[“type”], EnumTransformable(???) )
}
Run Code Online (Sandbox Code Playgroud)

Zel*_* B. 59

你根本不需要传递参数.您所要做的就是将枚举类型指定为泛型参数,ObjectMapper将负责所有枚举初始化过程.

 typeEnum <- (map["type"],EnumTransform<LevelType>())
Run Code Online (Sandbox Code Playgroud)

  • 您需要声明枚举类型,var typeEnum: LevelType! (2认同)