В настоящее время я работаю над приложением для iOS на основе викторины. Я хотел добавить индикатор выполнения, который менял цвета в зависимости от того, был ли на вопрос правильный или неправильный ответ. Исходя из того, ответили правильно или неправильно, я хочу, чтобы только этот интервал изменился на зеленый / красный, а не весь бар. У меня есть 50 интервалов для индикатора выполнения. Все, что я пробовал, привело к тому, что вся полоса меняла цвет, а не только интервал. Я все еще плохо знаком с разработкой для iOS и пытаюсь это выяснить.
let progress = Progress(totalUnitCount: 50)
challengeProgressBar.progress = 0.0
progress.completedUnitCount = 0
for i in 0..<index {
progress.completedUnitCount += 1
challengeProgressBar.setProgress(Float(self.progress.fractionCompleted), animated: true)
if (selectedAnswer[i] == Answers[i]){
challengeProgressBar.progressTintColor = UIColor.green
} else {
challengeProgressBar.progressTintColor = UIColor.red
}
}
Результат, который я получаю, - это самый последний цвет, созданный циклом. Весь бар красный или зеленый.