Я работаю над созданием викторины с Flutter. Я новичок в флаттере. Здесь создаются четыре кнопки для вопроса. Он запускает метод checkAnswer при нажатии кнопки ответа, и после этого я хочу изменить цвет фона для кнопок. Когда я удаляю onPressed: result == null из кнопки onPressed, он меняет фоновый цвет кнопок. Но пользователь может снова нажать кнопку после одного щелчка. Поэтому, когда я добавил onPressed: result == null, чтобы предотвратить это, фоновый цвет кнопок больше не обновляется. Я не понимаю, в чем здесь проблема. Это выглядит глупой проблемой.
...(currentQuestion["options"] as List)
.map((option) =>
Padding(
padding: const EdgeInsets.only(bottom: 10.0),
// Alttan boşluk
child: ElevatedButton(
onPressed: result == null
? () {
setState(() {
selectedOption = option;
});
checkAnswer(option);
}
: null,
style: ElevatedButton.styleFrom(
backgroundColor: result ==
AppLocalizations.of(context)
?.truth_answer &&
selectedOption == option
? Colors.red
: result ==
AppLocalizations.of(context)
?.wrong_answer &&
selectedOption == option
? Colors.blue
: result ==
AppLocalizations.of(context)
?.wrong_answer &&
currentQuestion["answer"]
as String ==
option
? Colors.red
: Colors.blue),
child: Text(
option,
style: const TextStyle(color: Colors.black87),
),
))),
void checkAnswer(String answer) {
if (timer != null) {
timer!.cancel();
}
setState(() {
if (answer == questions[currentQuestionIndex]["answer"] as String) {
result = AppLocalizations.of(context)?.truth_answer;
} else {
result = AppLocalizations.of(context)?.wrong_answer;
}
print("Seçilen seçenek: $selectedOption");
print("Doğru cevap: ${questions[currentQuestionIndex]["answer"]}");
print("Sonuç: $result");
});
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... -to-status
Как установить цвет фона повышенной кнопки в зависимости от статуса? ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Зачем вызовать методы с помощью оператора пространства имен, повышенной ошибки?
Anonymous » » в форуме Php - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Зачем вызовать методы с помощью оператора пространства имен, повышенной ошибки?
Anonymous » » в форуме Php - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Функция сохранения статуса проверки Гатлинга не работает с множественной проверкой статуса.
Anonymous » » в форуме JAVA - 0 Ответы
- 41 Просмотры
-
Последнее сообщение Anonymous
-