2016-10-11 4 views
4

던지는이 라인 self.displayResultLable.text += (title as! String) 오류값 유형 "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) :이 대신처럼 쓸 필요가

답변

10

:

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 
} 
+1

displayResultLable.text 옵션 유형은 무엇입니까? –

+0

예 (오타)가 업데이트되었습니다. 감사합니다. @ NazmulHasan –

+2

왜 여기에서 작동하지 않습니까? –

관련 문제