addToBackStack (null) 뒤에 commit ()의 의미는 무엇입니까?
인용 문서 :
addToBackStack ()을 호출하면 교체 트랜잭션이 백 스택에 저장되므로 사용자는 뒤로 버튼을 눌러 트랜잭션을 되돌리고 이전 조각을 다시 가져올 수 있습니다.
트랜잭션에 여러 변경 사항 (예 : 다른 add () 또는 remove ())을 추가하고 addToBackStack ()을 호출하면 commit ()을 호출하기 전에 적용된 모든 변경 사항이 단일 트랜잭션 및 뒤로 버튼으로 백 스택에 추가됩니다. 모두 함께 되돌릴 것입니다.
FragmentTransaction에 변경 사항을 추가하는 순서는 다음을 제외하고는 중요하지 않습니다.
당신은 전화해야합니다 commit()
마지막으로 . 동일한 컨테이너에 여러 조각을 추가하는 경우 추가하는 순서에 따라 뷰 계층 구조에 나타나는 순서가 결정됩니다.
그래서 마지막에 커밋해야합니다.
addToBackStack에 null 매개 변수를 전달해야하는 이유는 무엇입니까?
null 일 필요는 없으며 문자열 일 수 있습니다. 원하지 않으면 null을 전달하십시오.
공용 추상 FragmentTransaction addToBackStack (문자열 이름)
API 레벨 11에 추가됨이 트랜잭션을 백 스택에 추가합니다. 즉, 트랜잭션이 커밋 된 후 기억되고 나중에 스택에서 튀어 나오면 작업을 되돌립니다.
매개 변수 name이 백 스택 상태에 대한 선택적 이름 또는 null입니다.
에 관하여:
마지막 줄 .addToBackStack (null) .commit ()없이 코드를 실행했고 아무 문제없이 실행되었으므로이 코드는 쓸모가없는 것 같습니다.
이전 조각으로 이동하려면 백 스택에 추가하십시오. 따라서 조각을 백 스택에 추가할지 여부에 따라 다릅니다.
이렇게 추가 된 후 해당 조각을 얻는 방법은 무엇입니까?
이미 조각 인스턴스가 있습니다. firstFragment
있습니다. 그래서 나는 나중에 조각을 얻는 것이 무엇을 의미하는지 모르겠습니다.
추가 정보 @
http://developer.android.com/guide/components/fragments.html
http://developer.android.com/reference/android/app/FragmentTransaction.html#addToBackStack(java.lang.String)