Swift OS X NSTouch阶段rawInput到字符串?

问题描述:

似乎无法打印触摸阶段的字符串值已经试过这样:Swift OS X NSTouch阶段rawInput到字符串?

let phase = NSTouch.Phase(rawValue: touch.phase.rawValue)    
print(phase) 

let touches = event.touches(matching: NSTouch.Phase.ended, in: self.view) 
touches.forEach { (touch) in 
    print(" touch up \(touch.phase)") 
} 

输出我得到的是周围这个

Phase(rawValue: 8) 
﹣ touch up Phase(rawValue: 8) 

不漂亮的方式:

print("Began", String(describing: NSTouch.Phase.began)) 
print("Ended", String(describing: NSTouch.Phase.ended)) 
print("Moved", String(describing: NSTouch.Phase.moved)) 
print("Stationary", String(describing: NSTouch.Phase.stationary)) 
print("Touching", String(describing: NSTouch.Phase.touching)) 
print("Cancelled", String(describing: NSTouch.Phase.cancelled)) 

结果帮助生产这个:

let phases = [ 
      "1":"Began", 
      "2":"Moved", 
      "4":"Stationary", 
      "7":"Touching", 
      "8":"Ending", 
      "16":"Cancelled" 
] 

let phase = phases["\(touch.phase.rawValue)"] 
print(" Finger touch down \(phase)")