这行self.displayResultLable.text += (title as! String)错误抛出
无法转换值类型"字符串?" 预期参数类型"inout string"
这是我的代码:
if results.count > 0 {
var displayResult : String?
for books in results as! [NSManagedObject] {
if let title = books.valueForKey("title") {
self.displayResultLable.text += (title as! String)
}
}
}
Run Code Online (Sandbox Code Playgroud)
inout这里的字符串是什么?什么是最佳做法?
注意这一行 self.displayResultLable.text = (title as! String)工作正常:
Ras*_*n L 21
你需要这样写它:
self.displayResultLable.text = self.displayResultLable.text! + title as! String
Run Code Online (Sandbox Code Playgroud)
这是因为左侧是可选的而右侧不是,它们不匹配.这就是为什么你需要写label.text = label.text + ...
我也建议你改为if let改为:
if let title = books.valueForKey("title") as? String {
self.displayResultLable.text = (self.displayResultLable.text ?? "") + title
}
Run Code Online (Sandbox Code Playgroud)