在功能方面,这完全适用于Xcode 6.2,现在我有一个错误'subscript' in unavailable: Indexing a String's UTF16View requires a String.UTF16View.Index, which can be constructed from Int when Foundation is imported
。这是代码:
extension Character {
var keyCode: Int {
return Int(String(self).utf16[0])
}
}
在这段代码中我得到了同样的错误:
extension NSEvent {
var character: Int {
return Int(charactersIgnoringModifiers!.utf16[0])
}
}
答案 0 :(得分:1)
String.UTF16View
是CollectionType
,因此您可以获取索引
第一个元素的使用startIndex
属性:
extension Character {
var keyCode: Int {
let utf16view = String(self).utf16
return Int(utf16view[utf16view.startIndex])
}
}
(我的电脑上没有Xcode 6.2,因此我不能 解释为什么你的代码之前编译过。)