2017-12-17 1 views
-4

내가 점수를 부르는 레이블에 점수 번호를 표시하고 싶습니다. 그것은 오류가 계속 발생합니다. 여러 가지 방법을 시도했지만 오류가 발생할 때마다 시도합니다. 누군가이 문제를 해결할 수 있습니까?왜 포인트 변수가 내 레이블에 표시되지 않습니까?

//VARIABLES 
var currentQuestion = 0 
var rightAnswerPlacement:UInt32 = 0 
var points:UInt32 = 0 

//SCORE 

@IBOutlet weak var score: UILabel! 

//QUESTION 
@IBOutlet weak var lbl: UILabel! 


//BUTTON 
@IBAction func action(_ sender: AnyObject) 
{ 
    if (sender.tag == Int(rightAnswerPlacement)) 
    { 
     print("Right") 
     points += 1 
    } 
    else 
    { 
     print("Wrong") 
    } 

    if (currentQuestion != questions.count) 
    { 
     newQuestion() 
    } 
    else 
    { 
     score.text = points 
    } 
} 
+0

답변 :

score.text = "\(points)" 

또는

보조 노트로
score.text = String(points) 

이, 스위프트에이처럼 if 문을 쓸 수 있습니다 .... 유효하다. 하지만 ** 당신은 ** 우리에게 무언가를 말하지 않습니다. 즉, 당신의 잘못은 무엇입니까? (당신이 우리에게 말할 때까지는 우리가 가정 할 때만 가정합니다.) – dfd

+0

오류가 발생하면 독자에게 그 오류가 무엇인지, 그리고 어떤 오류가 있는지 알려줄 필요가 있습니다. 그렇지 않으면 우리는 추측하고 있습니다. 이렇게 좋은 질문을하는 법을 배우십시오. –

답변

0

당신은 int로 (문자열 인) 프로퍼티는 .text UILabel의를 설정할 수 없습니다. 먼저 문자열로 만들어야합니다. 이처럼 :

score.text = "\(points)" 
0

UILabeltext 속성 유형 String이다, 그래서 당신은 score.text로 설정하기 전에 Stringpoints 캐스팅해야합니다. 교체 :

score.text = points 

으로 :

if currentQuestion != questions.count { 

} 
관련 문제