이 문제를 해결하기 위해 지난 2 일간 검색했습니다. 내가 가진 문제가 발생하고 코드의 일부는 다음과 같습니다iOS 레이블이 텍스트를 문자열 값으로 업데이트하지 않지만 Swift에서 문자열이 올바르게 인쇄됩니다.
test
Goldfish
참고 : 코드가 다른 사람의 값을 출력 콘솔에서 다음과 같이 내가 무엇입니까 출력은 [say practiceLabelVar gets the value optional(Goldfish)]
class PracticeTyping: UIViewController {
@IBOutlet weak var practiceLabel: UILabel!
var practiceLabelVar: String?
var x = "test"
override func viewDidLoad() {
super.viewDidLoad()
if let newPracticeLabelVar = practiceLabelVar {
self.practiceLabel.text = newPracticeLabelVar
print ("\(newPracticeLabelVar)")
x = newPracticeLabelVar
} else {
print ("\(x)")
}
}
}
문은 if let 문에 코드를 인쇄합니다.
practiceLabel.text
은 변경되지 않고 기본값을 유지합니다.
도와주세요. 감사
어디에서 "금붕어"를 practiceLabelVar에 할당합니까? 그 이유는 그것이 practiceLabelVar 변수에 어떤 값도 할당하지 않았기 때문입니다. – dRAGONAIR
다른보기의 테이블 뷰 컨트롤러에서 Goldfish 값을 할당하려고합니다. { performSegue (withIdentifier : "practiceTypingSegue", 보낸 사람 : 자기) : 나는 버튼에게 @IBAction의 FUNC의 practiceTyping (모든 _ 보낸 사람)를 클릭하면? : PracticeTyping = self.storyboard .instantiateViewController (withIdentifier : "PracticeTypingView 는 PracticeTypingVar하자 ") 같이! 를 PracticeTyping PracticeTypingVar.practiceLabelVar myFavoriteAnimals = [(발신자 AnyObject 등) .tag] .name을 self.present (PracticeTypingVar 애니메이션 : 사실, 완성 : 닐)} – Amr