AlertDialog(알림 창)
스마트폰을 사용하다 보면 여러 상황에서 다음과 같은 알림 창을 마주할 때가 있다.
이러한 알림창을 AlertDialog라고 한다.
AlertDialog는 보통 사용자에게 어떠한 내용을 알려주고 어떠한 선택을 할 수 있게 하는 목적을 가지고 사용한다.
위의 사진을 보면 알 수 있듯이, AlertDialog는 크게 3가지 영역인 "제목", "내용", "버튼" 영역으로 나뉜다.
첫 번째 사진을 보면 내용과 버튼 영역만이 있는 것을 볼 수 있다.
제목 영역은 선택사항으로, 알림을 간단한 메시지 또는 질문을 나타내는 경우 생략하여도 된다.
AlertDialog 생성 및 사용
AlertDialog를 생성하기 위해서는 AlertDialog.Builder를 사용한다.
val alertDialog = AlertDialog.Builder(this)
이제 제목과 내용 버튼을 넣어주어야 한다.
제목을 넣기 위해서는 .setTitle()을 사용하면 된다.
alertDialog.apply {
setTitle("제목")
}
또는
alertDialog.setTitle("제목")
내용을 넣는 방법도 제목을 넣는 방법과 같다.
제목의 뒤에 이어서 넣어보자.
alertDialog.apply {
setTitle("제목")
setMessage("내용")
또는
alertDialog.setTitle("제목").setMessage("내용")
이제 버튼을 넣어야 한다.
위에서 봤듯이 버튼은 최대 3개까지 가능하다. 이때 각 버튼들은 같은 버튼이 아닌 각각 다른 종류의 버튼이다.
버튼의 메소드는 다음과 같다.
- setPositiveButton(): Yes 또는 OK 등의 긍정을 나타내는 버튼
- setNegativeButton(): No 또는 Cancel 등의 부정을 나타내는 버튼
- setNuetralButton(): Later 등 결정을 연기하는 버튼
각 버튼명처럼 긍정 또는 부정, 연기를 선택하게 할 수도 있지만, 이 버튼을 누르면 어떤 기능을 수행하고, 저 버튼을 누르면 이 기능을 수행하라. 이런 식으로 작성하여도 상관없다.
버튼의 갯수에 따라 각각의 위치가 정해지므로 어떠한 버튼을 사용할지 상관없이 각 버튼에 맞는 기능을 구현하면 된다.
alertDialog.apply {
setTitle("제목")
setMessage("내용")
setPositiveButton("버튼명") { 기능 구현 }
setNegativeButton("버튼명") { 기능 구현 }
setNeutralButton("버튼명") { 기능 구현 }
}
AlertDialog 예시
- DIALOG버튼: Toast, None, Initailization 3개의 버튼을 가지고 있다.
- Toast 버튼: Toast 메시지를 띄운다.
- None 버튼: 아무 일도 일어나지 않고 다이얼로그를 종료시킨다.
- Initialization 버튼: 숫자를 초기화시킨다.
- COUNT 버튼: 숫자를 증가시킨다.
전체적인 코드는 깃허브에서 확인하면 된다.
코드
결과
'Android' 카테고리의 다른 글
[Android] Bottom Navigation 사용하기 (0) | 2022.08.21 |
---|---|
[Android] RecyclerView(리사이클러뷰) (0) | 2022.08.20 |
[Android] 화면 회전할 때 데이터 처리 (0) | 2022.08.17 |
[Android] Fragment와 Fragment 생명 주기 (0) | 2022.08.15 |
[Android] Activity LifeCycle(액티비티 생명주기) (0) | 2022.08.14 |
댓글