[Android] 다이얼로그 - DialogFragment

panax·2021년 8월 16일
0

Android

목록 보기
2/16

이전 내용에서 이어지는 글입니다.

1. Dialog Fragment

Dialog Fragment는 생명 주기 이벤트를 처리하기 힘든 기존의 Dialog를 보완하기 위해 만들어진 클래스입니다.
Dialog Fragment는 Dialog의 컨테이너 역할을 하며, 화면의 회전, live data 같은 생명 주기 이벤트 처리를 할 수 있게 도와줍니다.
또한, Dialog Fragment는 이름처럼 Fragment를 상속받기 때문에 프래그먼트처럼 사용할 수도 있습니다.

2. 사용법

class CustomDialogFragment : DialogFragment() {

    override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {

        return CustomDialog(requireContext(), R.style.CustomDialogStyle)
    }
}

DialogFragment를 상속받고 onCreateDialog 메소드에서 사용할 다이얼로그 클래스를 생성하면 됩니다.

val dialogFragment = CustomDialogFragment()
dialogFragment.show(supportFragmentManager, "Custom")

앞에서 만든 DialogFragment를 생성하고 show 메서드를 호출하면 다이얼로그가 나타납니다.
DialogFragment은 프래그먼트이기 때문에 프래그먼트 매니저가 관리합니다.
두 번째 인자로 주는 tag는 findFragmentByTag 메소드를 사용할 때 입력값으로 사용할 수 있습니다.

profile
안드로이드 개발자

0개의 댓글