Я хочу проверить, находится ли объект с определенным классом в заднем стеке. Если это так, я буду использовать FLAG_ACTIVITY_CLEAR_TOP, если нет, я хочу получить доступ к root и нажать класс.
Предположим, что у меня есть A, C, D в стеке, и я хочу добавить B. Поскольку B не существует в стеке (здесь), я хочу, чтобы стек стал A, B (очистив C, D и нажав B).
Если бы у меня в стеке были A, B, C, D, он бы извлек C, D без нажатия B.
Есть ли способ сделать это, не очищая все в стеке и не нажимая класс A с параметром Intent «GoToClass» и не нажимая класс «GoToClass» после загрузки -root- A?
Из документации Android:
public static final int FLAG_ACTIVITY_CLEAR_TOP
Если установлено, и запускаемое действие уже выполняется в текущей задаче, то вместо запуска нового экземпляра этого действия все другие действия поверх него будут закрыты, и это намерение будет доставлено в (сейчас на вверху) старая деятельность как новое намерение.
Например, рассмотрим задачу, состоящую из действий: A, B, C, D. Если D вызывает startActivity() с намерением, которое разрешается в компонент действия B, то C и D будут завершены, а B получит заданное намерение. , в результате чего стек теперь выглядит так: A, B.