Gmail 앱과 같이 조각 탐색을 만들어야합니다. 그것은 마치 하나의 메인 프래그먼트 A를 가지고 있습니다. 네비게이션 드로어에서 다른 프래그먼트 (B, C, D ...)를 열 수 있으며, 새로운 프래그먼트를 열면 메인 프래그먼트 맨 위에 열립니다. 버튼, 모든 경우에 우리는 메인 프래그먼트 A로 돌아 왔고, 새로운 오픈 프래그먼트를 카운트하지 않아도된다. 그것은 보인다, 첫 번째 주요 조각은 우리가 조각을 backStack 추가하지 않고 메서드 (int FragmentTransaction)를 사용합니다. 그런 다음, 다음 조각 B는 back stack에 추가하여 메소드 add도 사용합니다. 다른 하나 (C 조각)를 열어야 할 때 두 번째 조각 B를 대체해야합니다. 그러나 replace() 메서드를 사용하면 모든 컨테이너를 대체하고 기본 조각 A는 조각 C 또는 B에서 뒤로 버튼을 눌렀을 때 표시되지 않습니다. 앱을 닫습니다. 그래서 문제는 조각 A를 잃지 않고 조각 B 또는 C 만 바꾸는 방법입니까?조각 탐색
Q
조각 탐색
1
A
답변
1
유효한 솔루션은 활동이 컨테이너 framelayouts을하는 것입니다. 첫 번째 것 (다른 하나의 아래에)은 당신의 프래그먼트 A를 포함합니다. 당신이 여는 모든 것은 두번째 컨테이너에 추가/대체 될 것입니다. 당신이 당신의 조각 B, C를 추가 할 경우
또 다른 해결책은 정적 레이아웃에 조각 A를 포함하고 그 위에 컨테이너의 FrameLayout이있는이다, D 등
1
개방이
HighlightFragment highlightFragment=new HighlightFragment(FirstReaderScreen.this); //Your fragment
getSupportFragmentManager()
.beginTransaction()
.add(R.id.LL_Fragment, highlightFragment) // LL_fragment is container
.addToBackStack(null)
.commit();
처럼 조각 및 활동 OnBackPress
@Override
public void onBackPressed() {
if (getSupportFragmentManager().getBackStackEntryCount() > 0) {
getSupportFragmentManager().popBackStack();
} else {
super.onBackPressed();
}
}
+0
왜, 내가 addToBackStack (널)을 수행 할 때, 내가 충돌 NullPointerException있어? –
+0
잘 작동합니다 Logcat을 게시 할 수 있습니까 – Redman
관련 문제
- 1. 조각 탐색
- 2. 조각 탐색
- 3. 안드로이드 - 탐색 서랍 조각
- 4. 두 조각 사이의 탐색
- 5. ActionBar 목록 탐색 겹치는 조각
- 6. Android - 조각 간 탐색 오류
- 7. 탭 및 조각 탐색 문제
- 8. 탐색 드로어 항목의 조각 전환
- 9. 탐색 창으로 조각 변경 오류
- 10. Android 하단 탐색 조각 문제
- 11. 탐색 서랍 작업, 조각 전송
- 12. 조각/탐색 서랍이 겹침 TableLayout?
- 13. 탭이있는 ActionBar의 조각 사이를 탐색
- 14. 탐색 창을 사용하여 조각 수명주기 관리
- 15. 조각 트랜잭션 후 탐색 헤더의 어두운 그림자
- 16. 탐색 서랍 조각 사이의 변경이 느립니다.
- 17. 조각 대신 활동을 전환하는 탐색 서랍
- 18. FindViewByID가 조각 탐색 드로어에서 null을 반환합니다.
- 19. 안드로이드 스튜디오 오류 - 조각 - 탐색 서랍
- 20. 탐색 서랍을 사용하는 Android 조각 상태
- 21. 조각 탐색 안쪽 탭 작업 표시 줄
- 22. 안드로이드 스튜디오 - 조각 클래스에서 탐색 창 열기
- 23. 안드로이드 사이드 메뉴 탐색 - 처리 조각
- 24. 탐색 드로어 조각 내 탭 스 와이프
- 25. 탐색 모음의 태그를 사용한 조각 비교
- 26. 상태 탐색 서랍 페이지 저장 (조각)
- 27. 탐색 창에 다른 클래스를 상속하는 방법 조각?
- 28. 조각 - 탐색 창 - 앱 중지 오류
- 29. 조각 및 탐색 서랍이있는 하나의 활동
- 30. Android - ActionBarSherlock 탐색 함 및 활동이있는 조각
두 번째 솔루션을 만들려고합니다. 나는 조각 A를 정적으로 추가하고 다른 조각을 위해 상단 FrameLayout에 만듭니다. new Fragment를 열면 replace()를 사용하지만 문제가 생깁니다. 스택에 새 프래그먼트를 추가하면 onBack이 눌려집니다. 이전 스택을 추가하지 않으면 onBackpressed 앱이 닫힙니다. –
제 생각에, 먼저 스택에만 추가해야합니다 (예 : B, C, D 등) –
예 뒤로 추가 스택 첫 번째 조각 만 – Redman