본문 바로가기

개발일지

안드로이드 프로그래밍 - Toast 메시지, Snackbar

안드로이드 상에 가볍게 팝업되는 Toast 메시지는 기본적으로 하단과 같이 작성한다.

 

Toast.makeText( Context, 메시지문구, 띄우는 시간).show();

 

public void Toast(String m){
    Toast toast = Toast.makeText(getApplicationContext(),m,Toast.LENGTH_SHORT);
    toast.show();

}

 

기본적으로 중앙 하단에 띄워지게 되는데 위치를 변경하는것도 가능하다.

public void Toast(String m){
    Toast toast = Toast.makeText(getApplicationContext(),m,Toast.LENGTH_SHORT);
    toast.setGravity(Gravity.TOP|Gravity.CENTER,200,800);
    toast.show();
}

Toast 메시지 출력

 

 

Snackbar 도 Toast 와 비슷하다.

스낵바는 하단에 바 형태로 나타나게 된다.

 

Snackbar.make(View, 메시지문구, 띄우는 시간).show();

 

Snackbar 출력

 

다음은 대화상자이다.

대화상자란 버튼을 눌렀을때 예, 아니요 등의  사용자의 입력을 받을수 있는 상자로써 각각 onClick 함수로 다음 절차를 정의할 수 있다.

 

코드는 하단과같이 작성했다.

 

public void showMessage(){
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("안내");
    builder.setMessage("종료하시겠습니까?");
    builder.setIcon(android.R.drawable.ic_dialog_alert);
    builder.setPositiveButton("예", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialogInterface, int i) {
            Toast toast = Toast.makeText(getApplicationContext(),"예 버튼 눌림",Toast.LENGTH_SHORT );
            toast.setGravity(Gravity.CENTER,0,0);
            toast.show();
        }
    });
    builder.setNegativeButton("아니오", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialogInterface, int i) {
            Toast.makeText(getApplicationContext(),"아니오 버튼 눌림",Toast.LENGTH_SHORT ).show();
        }
    });

    AlertDialog dialog =builder.create();
    dialog.show();
}

구현된 모습은 아래와 같다.

 

 

대화상자 출력