MainActivity
및 ChildAaActivity
및 ChildBbActivity
이있는 앱이 있습니다.내 액티비티의 단일 인스턴스를 백 스택과 함께 사용하려면 어떻게해야합니까?
MainActivity는 우리를 자식 활동 중 하나에 보내고 사용자는 원하는대로 두 자식 활동 사이를 이동할 수 있습니다.
그러나 이러한 활동마다 하나의 인스턴스 만 있어야합니다. 내가 할 경우
는문제는 자식 활동 singleInstance
후 그들은 모두 별도의 작업을하고 아이에게 다시 다른 응용 프로그램으로 전환하고
onBackPress
나는 응용 프로그램을 종료한다는 것을 의미한다
launchMode
을 표준으로두면, 특히 두 아이 사이를왔다 갔다 할 때 특히 여러 액티비티 인스턴스가 생깁니다. 내가 singleTop
를 사용하는 경우
, 나는 내가 아이들에 noHistory
를 사용하는 경우 I 자유롭게 (첫째 다시 눌러 MainActivity에 저를 돌려 준다)
분명히 isTaskRoot()
를 사용하여 그들 사이에 이동할 수 없습니다
모두 문제가 늘
가 어떻게 정확하게 내가 원하는 동작을 달성한다 항상 사실 때문에, 버그를 종료 응용 프로그램을 수정 singleInstance
작업 (다른 시나리오에 유용하지 않습니다)?
- 같은 작업에서 다시 스택
- 모든 각 활동의 하나의 예/onBackPress 스위칭 애플리케이션
이렇게하면 어떻게됩니까? 두 개의 활동, MainActivity 및 ChildActivity가 있고 ChildActivity는 시작할 때 FragmentA 또는 FragmentB 중 하나를 표시합니다. 그런 다음 ChildActivity를 유지하면서 조각 트랜잭션을 사용하여 FragmentA와 FragmentB간에 쉽게 전환 할 수 있으며 필요한 경우 MainActivity로 쉽게 이동할 수 있습니다. –