M
M
Misha19882021-01-05 07:11:32
Java
Misha1988, 2021-01-05 07:11:32

Quiz in Java for Android?

Choosing an answer from only 4 points of possible answers looks monotonous.

How to do this: after answering the first question, in the next option there was a choice of only 2 answer points?

@Override
            public void onClick(View v) {
//ПРОВЕРКА Если ответ не выбран выводим сообщение "Выберете ответ"
                if (radio_g.getCheckedRadioButtonId() == -1) {
//ПРОВЕРКА Если нажата Radio кнопка без выбора ответа, то выводим сообщение о просьбе выбрать ответ
                    Toast.makeText(getApplicationContext(), "Выберете ответ", Toast.LENGTH_SHORT).show();
                    return;
                }
//Получаем даннеы о нажатой RadioButton. Помещаем в переменную ansText.То есть выбранный индекс из массива opt
                RadioButton uans = (RadioButton) findViewById(radio_g.getCheckedRadioButtonId());
                String ansText = uans.getText().toString();//В переменную ansText помещаем
                //Toast.makeText(getApplicationContext(), ansText, Toast.LENGTH_SHORT).show();


                if (ansText.equals(answers[flag])) {

                    correct++;
                    //Toast.makeText(getApplicationContext(), "Верно", Toast.LENGTH_SHORT).show();
                }else {
                    wrong++;
                    //Toast.makeText(getApplicationContext(), "Не верно", Toast.LENGTH_LONG).show();
                }

                flag++;// Переменная Флаг увеличиваеться на 1 с каждым нажатием кнопки


                if (score != null)
                    score.setText("" + correct);



                if (flag < questions.length) {


                    tv.setText(questions[flag]);// Массиву questions передается значение переменной flag+1, после чего происходит выборка из массива индексов(Данных) при каждом щелчке кнопки
                    rb1.setText(opt[flag * 4]);//Массиву opt передается значение переменной flag+1, после чего происходит выборка из массива индексов(Данных) при каждом щелчке кнопки, и умножает на 4 для выбора нужного индекса
                    rb2.setText(opt[flag * 4 + 1]);//+ 1 Cмещение на необходимый индекс в массиве opt
                    rb3.setText(opt[flag * 4 + 2]);
                    rb4.setText(opt[flag * 4 + 3]);



                }else {


                    Intent in = new Intent(getApplicationContext(),ResultActivity.class);
                    startActivity(in);
                }

                radio_g.clearCheck();//Обновление зажатой Radio кнопки

            }

Answer the question

In order to leave comments, you need to log in

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question