この行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)
}
}
}
_
ここでinout
文字列は何ですか?ベストプラクティスは何ですか?
この行self.displayResultLable.text = (title as! String)
が正常に機能していることに注意してください。
代わりに次のように記述する必要があります。
self.displayResultLable.text = self.displayResultLable.text! + title as! String
左側はオプションであり、右側はそうではなく、一致しないためです。だからlabel.text = label.text + ...と書く必要があります.
また、if let
代わりにこれに:
if let title = books.valueForKey("title") as? String {
self.displayResultLable.text = (self.displayResultLable.text ?? "") + title
}
オプションの連鎖演算子を使用して、オプションの(self.displayResultLable.text
)は非nilです:
self.displayResultLable.text? += (title as! String)