fix: new colorForAnswer for EstimationQuestions
This commit is contained in:
@@ -78,6 +78,7 @@ struct QuizView: View {
|
|||||||
) { gained in
|
) { gained in
|
||||||
viewModel.score += gained
|
viewModel.score += gained
|
||||||
viewModel.answeredCount += 1
|
viewModel.answeredCount += 1
|
||||||
|
viewModel.selectedAnswers[viewModel.currentQuestionIndex] = 0
|
||||||
isAnswered = true
|
isAnswered = true
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -186,13 +187,24 @@ struct QuizView: View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
guard index < viewModel.selectedAnswers.count,
|
guard index < viewModel.selectedAnswers.count,
|
||||||
let selected = viewModel.selectedAnswers[index],
|
|
||||||
index < viewModel.questions.count else {
|
index < viewModel.questions.count else {
|
||||||
return Color.gray.opacity(0.3) // unbeantwortet
|
return Color.gray.opacity(0.3) // unbeantwortet
|
||||||
}
|
}
|
||||||
|
|
||||||
let correct = viewModel.questions[index].correctAnswer
|
// Prüfen ob die Frage beantwortet wurde
|
||||||
return selected == correct ? .green : .red
|
let question = viewModel.questions[index]
|
||||||
|
if question.isEstimation {
|
||||||
|
// Bei Estimation-Fragen: Grün wenn beantwortet
|
||||||
|
return viewModel.selectedAnswers[index] != nil ? .green : Color.gray.opacity(0.3)
|
||||||
|
} else {
|
||||||
|
// Bei Multiple-Choice: Grün wenn richtig, rot wenn falsch
|
||||||
|
if let selected = viewModel.selectedAnswers[index] {
|
||||||
|
let correct = question.correctAnswer
|
||||||
|
return selected == correct ? .green : .red
|
||||||
|
} else {
|
||||||
|
return Color.gray.opacity(0.3) // unbeantwortet
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private func saveScore() {
|
private func saveScore() {
|
||||||
|
|||||||
Reference in New Issue
Block a user