안드로이드에서 유저에게 특정한 이벤트를 소개하거나 경고를 하는데 있어서,
AlertDialog를 사용하는 경우도 있지만,
FragmentDialog도 많이 사용하는데요.
오늘은 이 FramentDialog를 사용하여서 대화상자를 구현하는 방법에 대해서 정리해 보겠습니다.
1. Dialog XML 정의
먼저 보여줄 Dialog의 UI를 XML을 정의하겠습니다.
간단하게 이미지와 텍스트 그리고, 확인 버튼을 보여주는 UI를 생성할께요.
2. Fragment Java Code
이제 위의 레이아웃을 inflate할 fragment의 java code를 구현해 보겠습니다.
(참고로 DialogFragment는 v4 support library로부터 import 해왔습니다.)
onCreateView에서 아래와 같이 버튼을 찾아와서, OnClickListener를 등록해 놓습니다.
3. Activity Code
이제 위의 Fragment를 Activity에서 보여주도록 하겠습니다.
보여주는 방법은 간단한데요.
Activity에서 아래와 같이 Fragment객체를 가져와서,
show()메소드를 사용해주면 됩니다.
그럼, 아래와 같이 FragmentDialog를 볼 수 있습니다.
그런데, 한가지 빠진게 있는데요.
바로, 화면을 닫는 것입니다.
4. Dismiss
보이는 다이얼로그의 confirm버튼을 누르면 화면이 사라지도록 하는 코드를 쓸텐데요.
onClick()시에 dismiss() 메소드를 사용하면 됩니다.
참고로, 유저가 FragmentDialog 밖의 검은 영역을 터치시에도,
화면이 dismiss되는데요.
이것을 막기 위해서는 onCreateView에
setCancelable(false) 를 추가해주면 됩니다.
'Android 개발 > Android UI' 카테고리의 다른 글
DialogFragment 사이즈 조정 및 타이틀 제거 (0) | 2019.08.26 |
---|---|
업그레이드 된 안드로이드 개발 이미지 추가 방법 #Resource Manager (0) | 2019.07.14 |
Android 버튼 UI에 Ripple효과 넣기 (2) | 2019.06.16 |
CoordinatorLayout과 Behavior (0) | 2019.05.30 |
Android 에서 Vector(벡터) 이미지 사용하기 (0) | 2019.01.18 |
NavigationView를 이용한 Navigation Drawer 구현하기 (0) | 2017.07.23 |
TextView에 글자가 흐르게 하는 marquee (0) | 2017.07.06 |
EditText의 ImeOptions 로 키보드의 Action 설정하기 (0) | 2017.07.05 |
Splash (로딩화면) 화면 만들기 | Android (0) | 2017.06.18 |
Keyboard 가 보이는지 알수 있게 해주는 ViewTreeObserver (1) | 2017.06.10 |
댓글