Fragment

haehyunlee·2023년 6월 27일

20230627 작성중

Activity

replaceFragment

FragmentManager

Fragment 관리와 Fragment 간의 화면 전환을 담당한다.
Fragment의 추가, 제거, 교체 등의 작업을 처리하는 역할

beginTransaction() : Fragment를 통해 FragmentTransaction 객체를 시작하는 메서드.

SupportFragmentManager

Android Support Library에서 제공, FragmentManager의 하위클래스로 안드로이드의 호환성을 보장하기 위해 상용된다. 앱이 호환되는 안드로이드 버전 범위 내에서 Fragment 관리를 지원한다.

sopportFragmentManager : 현재 Activity의 Fragment를 관리하는 FragmentManager의 인스턴스를 반환하는 프로퍼티

FragmentTransaction

Fragment 간의 화면 전환 작업을 정의하고 실행하는 데 사용된다.
FragmentManager를 사용하여 객체를 생성하지만, beginTransaction()을 호출한 후에는 FragmentTransaction 객체를 통해 Fragment 관련 작업(추가, 제거, 교체 등)을 추가할 수 있다.

val fragmentTransaction = supportFragmentManager.beginTransaction()
  1. sopportFragmentManager를 사용하여 현재 ActivityFragmentManager 얻는다.
  2. FragmentManger에서 beginTransaction()메서드로 FragmentTransaction 객체를 생성한다.
  3. 이렇게 생성된 FragmentTransaction 객체를 사용해서 Fragment 관련 작업을 수행한다.

Fragment 관련 함수

fragmentTransaction.replace()
fragmentTransaction.setTransition()
fragmentTransaction.commit()
fragmentTransaction.addToBackStack()
supportFragmentManager.beginTransaction()
supportFragmentManager.popBackStack()

Transaction

supportFragmentManager.beginTransaction()
fragmentTransaction.setTransition()
fragmentTransaction.commit()

BackStack

fragmentTransaction.addToBackStack(name.str)

supportFragmentManager.popBackStack(name.str, FragmentManager.POP_BACK_STACK_INCLUSIVE)

Animation

fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)

profile
안드로이드 개발자

0개의 댓글