Сохранить экземпляр Home Activity при запуске
Итак, мое приложение имеет 5 действий: A, B, C, D, E. A - это всплывающее окно (средство запуска), которое никогда не вызывается после запуска. После запуска B вызывается и выполняет домашнюю функцию. B, C, D, E все вызываются с помощью Intent.FLAG_ACTIVITY_REORDER_TO_FRONT, так что один экземпляр повторно используется и обновляется через onNewIntent(). Оно работает. Я доволен пользовательским опытом.
Вот мой вопрос. Я хотел бы, чтобы первый экземпляр B (при запуске) удерживался как корневая задача. Другими словами, я бы хотел, чтобы этот первый экземпляр B был последним экраном, который видит пользователь, если постоянно нажимать кнопку "Назад" до выхода из приложения. Все остальные экземпляры B должны быть "переработаны", как правило, с использованием Intent.FLAG_ACTIVITY_REORDER_TO_FRONT.
Я почти уверен, что могу сделать уникальное занятие (назовем это B2) и выполнить это, есть ли лучший способ?
1 ответ
Ты можешь использовать
Intent cActivity = new Intent(BActivity.this,CActivity.class);
cActivity.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(cActivity);
установка Intent.FLAG_ACTIVITY_NEW_TASK
будет удерживать экземпляр вашей активности B и откроет вашу деятельность C как новую задачу. или вы можете позвонить startActivity()
без установки какого-либо флага.