Android

[Android] AlertDialog를 이용한 알림 창 띄우기

JunsuKim 2022. 8. 17.
728x90

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 버튼: 숫자를 증가시킨다.

전체적인 코드는 깃허브에서 확인하면 된다.

코드

 

GitHub - junsu1023/Android-Study: Android 공부

Android 공부. Contribute to junsu1023/Android-Study development by creating an account on GitHub.

github.com

결과

728x90

댓글