18.enum枚举类型有原始值的初始化
2016-04-13 本文已影响222人
noonez
//消息类型
enum MessageTypes: String {
case Text = "text"
case Signal = "signal"
}
class MessageData: NSObject {
var mt:MessageTypes = .Signal //message type
func handleMt(mt:String) {
if let tmp = MessageTypes(rawValue: mt){
self.mt = tmp
}else{
self.mt = .Signal
}
}
}
直接使用MessageTypes(rawValue: mt)
可以初始化mt对应的枚举值,当然是可选类型的,如果mt的值不存在于枚举类型Messagetypes中,初始化后就是nil