Если коротко то программа должна выводить пример, проверять введенный пользователем ответ (после нажатия на кнопку "проверить" ), затем выдавать результат проверки ("Верно/ошибка") и затем выдавать новый пример. И так по кругу, в идеале пользователь должен сам указывать количество примеров.
Мой код:
package com.example.levelup;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class Game extends AppCompatActivity {
private TextView prim, snoska;
private EditText otvet;
private Button proverka;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_game);
prim = findViewById(R.id.prim); //Сам пример
otvet = findViewById(R.id.otvet); //Поле для ответа
snoska = findViewById(R.id.snoska); //Текст под примером, где будет отображаться "верно/ошибка"
proverka = findViewById(R.id.proverka); //Кнопка - проверка примера
//Создаем 1-й пример (далее со второго примеры должны создаваться при помощи отдельного метода, знаю колхоз, если можно как-то иначе буду благодарен за подсказку)
int a = (int) (Math.random() * 10);
int b = (int) (Math.random() * 10);
int c = a + b;
int kol = 0;
//Выводим его и записываем ответ пользователя
prim.setText(a + " + " + b + " = ?");
//Проверяем ТОЛЬКО после нажатия на кнопку
proverka.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int otv = Integer.parseInt(otvet.getText().toString());
if (c == otv) {
snoska.setText("Good!");
for (int j = 0; j<5; j++) {
sledprim();
}
} else {
snoska.setText("No...");
for (int j = 0; j<5; j++) {
sledprim();
}
return;
}
}
});
}
public void sledprim() {
int a1 = (int) (Math.random() * 10);
int b1 = (int) (Math.random() * 10);
int c1 = a1 + b1;
int kol1 = 0;
//Выводим его и записываем ответ пользователя
prim.setText(a1 + " + " + b1 + " = ?");
//Проверяем ТОЛЬКО после нажатия на кнопку
proverka.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int otv1 = Integer.parseInt(otvet.getText().toString());
if (c1 == otv1) {
snoska.setText("Good!");
} else {
snoska.setText("No...");
}
return;
}
});
}
//Возврат в меню:
public void Game_nazad(View view){
Intent intent = new Intent(this,MainActivity.class);
startActivity(intent);
}
}
Программа выдает только 2 примера (вместо 5), и то, потому что я вручную вызвал 2 раза один и тот же метод (назвав их по-разному). И даже не знаю что мне делать дальше, поэтому буду рад за помощь, а также за советы что почитать/посмотреть начинающему по данной теме.