每个按钮都有不同的答案。我计划通过匹配indexnumber进行检查,但是当尝试键入按钮操作时,它会显示未解析的标识符randomIndex
。有没有其他方法来检查答案或使其工作?
override func viewDidLoad() {
super.viewDidLoad()
for _ in 1...3 {
randomQuestion(queModel: questionModel)
}
}
func randomQuestion(queModel queModel:QuestionModel){
let questions = queModel.questions
let randomIndex = Int(arc4random_uniform(UInt32(questions.count)))
SignImage.image = questions[randomIndex].question
AnswerBtn_A.setTitle("\(questions[randomIndex].answers[0])", forState: .Normal)
AnswerBtn_B.setTitle("\(questions[randomIndex].answers[1])", forState: .Normal)
AnswerBtn_C.setTitle("\(questions[randomIndex].answers[2])", forState: .Normal)
AnswerBtn_D.setTitle("\(questions[randomIndex].answers[3])", forState: .Normal)
// CorrectAnswer = "\(questions[randomIndex].correctAnswerIndex)"
}
@IBAction func ActBtn_A(sender: AnyObject) {
}
@IBAction func ActBtn_B(sender: AnyObject) {
}
@IBAction func ActBtn_C(sender: AnyObject) {
}
@IBAction func ActBtn_D(sender: AnyObject) {
}
答案 0 :(得分:0)
只需声明您的randomIndex
外randomQuestion
功能,如下所示:
var randomIndex = 0
func randomQuestion(queModel queModel:QuestionModel){
let questions = queModel.questions
randomIndex = Int(arc4random_uniform(UInt32(questions.count)))
SignImage.image = questions[randomIndex].question
AnswerBtn_A.setTitle("\(questions[randomIndex].answers[0])", forState: .Normal)
AnswerBtn_B.setTitle("\(questions[randomIndex].answers[1])", forState: .Normal)
AnswerBtn_C.setTitle("\(questions[randomIndex].answers[2])", forState: .Normal)
AnswerBtn_D.setTitle("\(questions[randomIndex].answers[3])", forState: .Normal)
// CorrectAnswer = "\(questions[randomIndex].correctAnswerIndex)"
}
现在,您可以在班级的任何方法中阅读randomIndex
。