Android

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

JunsuKim 2022. 8. 17. 21:39
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