반응형
서브 페이지(fragment) → 서브 페이지(fragment) 이동
1-1 Fragment에서 2-1 Fragment 이동은 어렵지 않게 할 수 있습니다.
그런데 문제는 상단의 탭이 변경되지 않습니다.
검색해 보면 나오는 상단의 탭을 변경하는 방법은 이벤트 리스너 호출해서 변경하는 방식이라 문제가 됩니다.
예) tabLayout.getTabAt(1).select();
해결 방법
상단 탭만 변경은 이렇게 하면 가능 합니다.
깔끔하지는 않은데 더 좋은 방법 있으면 댓글 남겨 주세요.
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
// 탭 메뉴 선택
@Override
public void onTabSelected(TabLayout.Tab tab) {
// 서브 페이지에서 서브 페이지 이동시는 탭 이벤트 중지
if (isSubFragment == true) {
isSubFragment = false;
return;
}
... ...
}
// 탭 메뉴 선택
@Override
public void onTabReselected(TabLayout.Tab tab) {
// 서브 페이지에서 서브 페이지 이동시는 탭 이벤트 중지
if (isSubFragment == true) {
isSubFragment = false;
return;
}
... ...
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
});
// 2-1 서브 페이지로 이동
((MainActivity) getActivity()).isSubFragment = true;
((MainActivity) getActivity()).tabLayout.getTabAt(1).select();
((FragmentActivity) context).getSupportFragmentManager().beginTransaction().add(R.id.container, fragment2Sub1).commit();
반응형
'개발 - 안드로이드' 카테고리의 다른 글
안드로이드 Notification 클릭시 Fragment 이동 (0) | 2023.09.25 |
---|---|
안드로이드 editText 라인 수에 따른 자동 높이 조절 (0) | 2023.09.14 |
안드로이드 FCM 스프링 서버에서 특정 사용자에게 notification 예제 #03 (0) | 2023.09.09 |
안드로이드 FCM 포그라운드 전체 사용자 notification 예제 #02 (0) | 2023.09.09 |
안드로이드 FCM 백그라운드 전체 사용자 notification 예제 #01 (0) | 2023.09.09 |