Я очень новичок в разработке приложений (4 дня), я создаю логическую c математическую игру с отдельными уровнями. Level1 отправляет ключ SharedPreferences «currentlevel» со строковым значением «1». Приведенный ниже код работает, кнопка «Воспроизведение» отправляет меня на уровень 2, если я уже побил уровень 1.
Моя проблема заключается в том, что мне приходится дважды щелкать кнопку «Воспроизведение» вместо обычного одиночного щелчка. Я подозреваю его, потому что у меня есть 2 View.OnClickListeners, но удаление одного из них приводит к тому, что он вообще не работает. Любая помощь в решении этой проблемы с благодарностью.
Button button1 = (Button) findViewById(R.id.playbutton);
final Button button3 = (Button) findViewById(R.id.playbutton);
SharedPreferences result = getSharedPreferences("level", MODE_PRIVATE);
final String current = result.getString("currentlevel", "0");
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent play2 = new Intent(MainActivity.this, Level2.class);
Intent play1 = new Intent(MainActivity.this, Level1.class);
if (current == "1")
startActivity(play2);
else if (current == "0")
startActivity(play1);
}
});
}});