Android

깡샘 안드로이드#1 - 5.2.2 알림 창

Sean-creative 2019. 11. 15. 22:07

package com.example.part_5_2_1;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //알림창은 코드에서 직접 new 연산자로 생성하지 못하고 Builder 클래스로 생성해야한다.
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        //알림창을 생성하는 코드가 아니라, 알림 창을 만들어 주는 Builder 클래스의 객체를 생성한 것이다.
        //Builder 객체의 여러 setter 메서드를 이용하여 다이얼로그 구성을 설정하면 Builder 객체가 알림 창을 생성해주는 구조

        DialogInterface.OnClickListener dialogListener = new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {
                Toast t = Toast.makeText(this, "종료하려면 한번 더 누르세요", 0);
                t.show();
            }
        };

        builder.setIcon(android.R.drawable.ic_dialog_alert);
        builder.setTitle("알림");
        builder.setMessage("정말 종료 하시겠습니까?");
        builder.setPositiveButton("OK", dialogListener);
        // 두 번째 매개변수에 이벤트 핸들러 클래스를 등록
        builder.setNegativeButton("NO",null);

        AlertDialog alertDialog = builder.create();
        alertDialog.show();

    }
}