Откройте новое действие из пункта меню actionbox и закройте собственно действие - PullRequest
0 голосов
/ 22 октября 2018

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

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    int id = item.getItemId();

    //menu item clickd
    if (id == R.id.share) {
            startActivity(new Intent(MainActivity.this, HowToUse.class));
        return true;
    }

    if (id == R.id.terms) {
        Intent intent = new Intent(this,InfoAbout.class);
        this.startActivity(intent);
        return true;
    }

    if (id == R.id.howuse) {
        Intent intent = new Intent(this,HowToUse.class);
        this.startActivity(intent);
        return true;
    }

    return  super.onOptionsItemSelected(item);

}

1 Ответ

0 голосов
/ 22 октября 2018

Хорошо, я обнаружил, что добавление соулейона. Флаги для очистки верха

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    int id = item.getItemId();

    //menu item clickd
    if (id == R.id.share) {
            startActivity(new Intent(MainActivity.this, HowToUse.class));
        return true;
    }

    if (id == R.id.terms) {
        Intent intent = new Intent(this,InfoAbout.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
    }

    if (id == R.id.howuse) {
        Intent intent = new Intent(this,HowToUse.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
    }

    return  super.onOptionsItemSelected(item);

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