0
알림 바에서 알림을 연 후에 인공적인 백 스택을 만들려고합니다. 알림을 연 후단편 백스 타일
워크 플로우 :
- 알림 의도을 클릭하면 MainActivity가 해고 여는.
- MainActivity를 연 후
if(getArguments != null)
을 확인합니다. null이 아니면 알림 조각을 열고 전달 된 알림 ID를 전달합니다. - 알림
if(id != -1)
알림 조각을 엽니 다.
문제는 뒤로 버튼을 클릭하면 MainActivity 창으로 곧바로 이동하여 알림 조각을 건너 뜁니다.
는 I 그런 알림을 단편을여
Fragment frag = new NotificationFragment();
frag.setArguments(bundle);
FragmentTransaction ft =getSupportFragmentManager().beginTransaction();
ft.add(R.id.container, NotificationsFragment.getInstance(null, id)).commit();
은이 같은 통지 단편을여
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
NotificationFragment notificationFragment = new NotificationFragment();
Bundle bundle = new Bundle();
bundle.putInt("id", getArguments().getInt("id"));
notificationFragment.setArguments(bundle);
ft.add(R.id.container, notificationFragment).addToBackStack(null).commit();
R.id.container
는 FrameLayout이이 SOR 나타내는 단편 사용된다. 저는 librrary를 지원합니다.
나는 FragmentTransaction.replace()가 기존의 모든 조각을 삭제하고 새로운 조각을 추가한다고 읽었습니다. 그리고 FragmentTransaction.add()는 그것들을 활동 상태에 추가합니다.
누군가 내가 잘못하고있는 것을 올바르게 수정하고 올바른 방법을 보여주십시오. 다시 클릭하면, MainActivity가 오는 이유
감사합니다. 저는 어떻게 그런 작은 일을 놓쳤는 지 알고 있습니다. 감사. 나는이 질문을 삭제 해야할지 모르겠다. 또는 –
질문을 삭제하고 싶다면 답을 받아 들여야한다. –