Я пишу приложение для Android, которое в основном представляет собой викторину.Он содержит изображения животных, и пользователь должен нажать на правильную картинку.Все изображения представляют собой файлы png, используемые в качестве фоновых изображений для представлений кнопок.
Проблема, с которой я столкнулся / был, связана с методом onCLick.Это код.
public void onClick(View view) {
if(view == r1){
if (correct == 0){
tally++;}
total++;
score.setText("Score: " + tally + " out of " + total );
rg.clearFocus();
rg.clearCheck();
new Thread(new Runnable() {
public void run() {
quest.post(new Runnable() {
public void run() {
correct = nextQ();
}
});
}
}).start();
}
if (view == r2){
if (correct == 1){
tally++;}
total++;
score.setText("Score: " + tally + " out of " + total );
rg.clearFocus();
rg.clearCheck();
new Thread(new Runnable() {
public void run() {
quest.post(new Runnable() {
public void run() {
correct = nextQ();
}
});
}
}).start();
}
if (view == r3){
if (correct == 2){
tally++;}
total++;
score.setText("Score: " + tally + " out of " + total );
rg.clearFocus();
rg.clearCheck();
new Thread(new Runnable() {
public void run() {
quest.post(new Runnable() {
public void run() {
correct = nextQ();
}
});
}
}).start();
}
}
r1, r2.r3 - все кнопки, а квест - это вопрос TextView.Моя первая попытка сделать это работала нормально, за исключением одной проблемы - она много разбилась.Я не использовал поток, который вы видите в приведенном выше коде.У меня тоже была четвертая кнопка r4.Проведя исследование в Интернете, я обнаружил, что поиск в Android и выбор картинок могут вызвать проблемы, и лучше всего поместить это в другую ветку.Я так и сделал, и это показано в коде выше.Это все еще разбилось, поэтому я вынул четвертую кнопку.Теперь он работает нормально, но я не уверен, почему.
Мой вопрос, кто-нибудь может сказать мне, как это сделать правильно?Я имею в виду, когда кнопка нажата, новые картинки генерируются случайным образом из раздела.Все картинки хранятся в папке для рисования, они не сохраняются в Интернете.