Xcode 为什么我的日志会打印这么多奇怪的字符,并把函数搞砸了';谁的产量?
我有一个函数,返回在第三方键盘上键入的最后一个单词:Xcode 为什么我的日志会打印这么多奇怪的字符,并把函数搞砸了';谁的产量?,xcode,swift,keyboard,Xcode,Swift,Keyboard,我有一个函数,返回在第三方键盘上键入的最后一个单词: var lastWordTyped: String? { let proxy = self.textDocumentProxy as! UITextDocumentProxy if let documentContext = proxy.documentContextBeforeInput as NSString? { let length = documentContext.length if
var lastWordTyped: String? {
let proxy = self.textDocumentProxy as! UITextDocumentProxy
if let documentContext = proxy.documentContextBeforeInput as NSString? {
let length = documentContext.length
if length > 0 && NSCharacterSet.alphanumericCharacterSet().characterIsMember(documentContext.characterAtIndex(length - 1)) {
let components = documentContext.componentsSeparatedByCharactersInSet(NSCharacterSet.alphanumericCharacterSet().invertedSet) as! [String]
println(components)
return components[components.endIndex - 1]
}
}
return nil
}
出于某种原因,尽管该函数工作正常并返回正确的输出,但我偶然查看了日志中的输出,发现它正在破坏输出并多次输出(如下图所示)
这会导致我的键盘内存使用量增加吗?它会减慢速度吗
我怎样才能解决这个问题
编辑1:使用模拟器时,此错误不可再现
println
不同步,因此如果有多个线程调用您的代码,它们的输出可能会重叠
我建议用
NSLog(components)
替换println(components)
,以便更好地了解实际情况。谢谢,效果很好。我从来没有遇到过这个