Bottom Navigation
으로 작업 할 때 Activities
대신 Fragments
을 사용하는 것이 좋습니다. 을 나는 각 탭은 Activity
입니다 Android 하단 탐색 - 활성 상태 유지
표시 같은 Bottom Navigation
줄을 사용하고 있습니다 : 인해 현재 디자인에, 나는 모든 Activities
디자인을 변환하지 않으려. 탭 중 하나를 탭하면 활동, startActivity(new Intent(getApplication(), TabActivityName.class));
을 시작합니다. 문제는 이들 탭 사이를 전환 할 때 Activity
의 상태가 손실된다는 것입니다. 예를 들어
: 음악 탭에
- 을 클릭하여 레코드 분류
fragment
을 표시하는 음악 탭에서 예술가에 - 클릭 (예술가의 목록을 표시합니다).
- 비디오 탭으로 전환
- 음악 탭으로 다시 전환하십시오. (필자는 아티스트의
discographyFragment
여전히 보여주는되고 싶어하지만, 예술가fragment
의 주요 목록에 돌아) 내가 해봤
것들 :
- 이
android:launchMode="singleTask"
과에 탭Activities
각각 변경android:alwaysRetainTaskState="true"
현재activity
이전에 시작된 탭으로 전환하는 경우에만 데이터가 보존됩니다. - 각 탭 변경
Activities
android:launchMode="singleInstance"
및android:alwaysRetainTaskState="true"
그러나 이로 인해 여러 개의 응용 프로그램 탭을 만드는 바람직하지 않은 효과가 발생합니다.
Fragment
이 탭을 전환 할 때로드되는 Activity
의 상태를 유지하는 방법에 대한 다른 아이디어는 무엇입니까?
Instagram 앱을 사용했는지 잘 모르겠습니다. 각 탭의 탐색 스택과 상태를 유지 관리 할 수있는 것 같습니다. 전체 애플리케이션이 하나의 활동 일 뿐이라는 것을 의미합니까? – Alan
내가하는 일을 정확히 알지는 못하지만 활동 내에서 조각의 상태를 유지함으로써 동일한 기능을 수행 할 수 있습니다. https://developer.android.com/guide/components/fragments.html – Jlange
하나의 활동으로 많은 현대 응용 프로그램을 관리하는 것은 흔한 일입니다. Instagram은 하나의 주요 활동 만 가질 수 있습니다. – Jlange