2015-02-13 4 views
1

Я пытаюсь ознакомиться с флагами намерений, и я хочу понять FLAG_ACTIVITY_RETAIN_IN_RECENTS. Я прочитал документацию, и кажется, что если этот флаг установлен при вызове Activity, если пользователь нажимает кнопку «Назад» или это действие завершено(), оно все равно остается в стеке. Является ли это толкование точным? Если нет, для чего используется этот флаг?Когда использовать FLAG_ACTIVITY_RETAIN_IN_RECENTS?

Справка: http://developer.android.com/reference/android/content/Intent.html Заранее благодарю вас!

ответ

2

Я прочитал документацию и, кажется, если этот флаг установлен при вызове активности, если пользователь нажимает кнопку назад или что активность закончена(), она по-прежнему остается в стеке.

Нет, активность не останется в стеке, но ее запись будет показана в последнем списке задач, вы можете щелкнуть эту запись, чтобы повторно запустить эту операцию, как только вы запустили приложение.

+0

спасибо за это объяснение. У меня есть лучшее понимание. Я буду экспериментировать с ним больше. Ура! – portfoliobuilder

1

Другого Использование в OverviewScreen: Если вы хотите сохранить задачу в обзорном экране, даже если его деятельность закончена, передать флаг FLAG_ACTIVITY_RETAIN_IN_RECENTS в addFlags() метод Intent, который запускает деятельность.

private Intent newDocumentIntent() { 
final Intent newDocumentIntent = new Intent(this, NewDocumentActivity.class); 
newDocumentIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT | 
    android.content.Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS); 
newDocumentIntent.putExtra(KEY_EXTRA_NEW_DOCUMENT_COUNTER, incrementAndGet()); 
return newDocumentIntent; 

}

Для того, чтобы достичь того же эффекта, установите атрибут андроид: autoRemoveFromRecents ложь. Значение по умолчанию - true для операций с документами, а false - для обычных действий. Использование этого атрибута переопределяет флаг FLAG_ACTIVITY_RETAIN_IN_RECENTS

 Смежные вопросы

  • Нет связанных вопросов^_^