Android, очистите X количество действий из стека активности
Как я могу удалить только переменное количество действий из стека действий?
Допустим, я хочу очистить 3 мероприятия, я не буду использовать android:noHistory
в манифесте я не буду использовать метод для очистки всего стека
и, возможно, я мог бы позвонить finish(); finish(); finish();
при определенных условиях, но это не кажется правильным.
Есть ли известный способ сделать это?
2 ответа
Решение
Вы можете зарегистрировать BroadcastReceiver
в классах, которые вы хотите закончить, затем отправьте трансляцию, когда вы хотите закончить их.
Грязно, но вы можете использовать getParent(). например:
this.getParent().getparent().finish();
this.getParent().finish();
this.finish();
И если вы хотите сделать это с x количеством действий, вы можете использовать цикл и переменную для отслеживания x числа родителей.