Android Stuio на BackPressed - PullRequest
4 голосов
/ 09 июля 2020

Я пытаюсь спросить пользователя, уверены ли они в выходе из этого действия ..... Но мой AlertDialog отображается в течение миллисекунды, и действие все равно закрывается. Как я могу это исправить?

public class SearchingActivity extends AppCompatActivity implements View.OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_searching);

        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setDisplayShowHomeEnabled(true);
        getSupportActionBar().setTitle("Search");

    }

    @Override
    public void onBackPressed() {
        super.onBackPressed();
        new AlertDialog.Builder(this)
                .setTitle("Exit")
                .setMessage("Are you sure you want to go back?")
                .setPositiveButton("ok", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        finish();
                    }
                })
                .setNegativeButton("No", null)
                .create()
                .show();
    }
}

1 Ответ

0 голосов
/ 09 июля 2020

Вы вызываете super.onBackPressed(), поэтому поведение по умолчанию все еще сохраняется. Удалите эту строку, если вы не хотите, чтобы действие по умолчанию было немедленно закрыто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...