Есть ли способ иметь один и только один экземпляр каждого действия?

Я обнаружил, что в моем приложении пользователь может быть весьма «вложенным» в различные действия, которые открываются, когда пользователь использует приложение.

Например:

  1. Главное меню
  2. Список объектов
  3. Сведения об объекте
  4. Редактирование объекта
  5. Подробности об объекте
  6. Сведения о дочернем объекте
  7. Редактирование дочернего объекта
  8. Сведения о дочернем объекте

Теперь, когда пользователь нажимает кнопку «Назад», он должен дважды пройти через «Детали дочернего объекта» (тот же объект, когда он редактируется, он возвращается на страницу с подробными сведениями), и то же самое происходит с «Подробностями родительского объекта».

Есть ли способ повторно использовать действия, если они уже открыты в стеке, и переупорядочить их на передний план? Единственный способ, который я видел, - это действия с атрибутом launcher . Кажется, я видел singleTask и singleTop .

Если я должен использовать эти два атрибута, singleTask и singleTop , как я должен их использовать? Когда я попытался включить их в приложение, это не имело значения. Нужно ли мне также устанавливать флаг при запуске намерения с помощью startActivity ?

36
задан Cody 24 January 2012 в 23:44
поделиться