본문 바로가기
프로그래밍/Android

AlertDialog & ProgressDialog & TimePickerDialog & DatePickerDialog 사용 예

by Mr-후 2018. 10. 5.
반응형


AlertDialog & ProgressDialog & TimePickerDialog & DatePickerDialog 사용 예





오늘 안드로이드 책을 보면서 예제로 만들어본 소스. 

필요할 때 바로 바로 가져다 사용하면 유용할 것 같은데, 실제 앱을 만들 때 이런 기본 컴포넌트를 사용할 일이 많을지 의문이다. 일단 그래도 지금은 아쉽다. 


블로그에 올려두면 여러모로 찾아보기가 수월하니 옮겨본다. 


1. 기본 알럿 다이얼로그

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setIcon(android.R.drawable.ic_dialog_alert);

builder.setTitle("알림");

builder.setMessage("정말 종료하시겠습니까?");

builder.setPositiveButton("확인",dialogListener);

builder.setNegativeButton("취소",null);


alertDialog = builder.create();

alertDialog.show();



2.리스트 알럿 다이얼로그

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("알림 벨소리");

builder.setSingleChoiceItems(R.array.dialog_array,0, dialogListener);


builder.setPositiveButton("확인", null);

builder.setNegativeButton("취소", null);


listDialog = builder.create();

listDialog.show();



3. 날짜 선택 피커 다이얼로그

//현재 날짜로 dialog 띄우기 위해 날짜를 구함

Calendar c = Calendar.getInstance();

int year = c.get(Calendar.YEAR);

int month = c.get(Calendar.MONTH);

int day = c.get(Calendar.DAY_OF_MONTH);


DatePickerDialog dateDialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {

    @Override

    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {

        showToast(year + " : " +  (monthOfYear +1) + " : " + dayOfMonth);

    }

}, year, month, day);

dateDialog.show();



4. 시간선택 피커 다이얼로그

//현재 날짜로 dialog 띄우기 위해 날짜를 구함

Calendar c = Calendar.getInstance();

int hour = c.get(Calendar.HOUR_OF_DAY);

int minute = c.get(Calendar.MINUTE);


TimePickerDialog timeDialog = new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {

    @Override

    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {

        showToast(hourOfDay + ":" + minute);

    }

}, hour,minute, false);


//is24HourView : false > 24시간포멧

timeDialog.show();


5.커스텀 알럿 다이얼로그

AlertDialog.Builder builder = new AlertDialog.Builder(this);

//custom dialog 위한 layout xml 초기화


LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);

View view = inflater.inflate(R.layout.dialog_layout, null);

builder.setView(view);


builder.setPositiveButton("확인",dialogListener);

builder.setNegativeButton("취소", null);


customDialog = builder.create();

customDialog.show();





반응형

'프로그래밍 > Android' 카테고리의 다른 글

px to dp & dp to px  (0) 2018.10.12
build.gradle에서 local.properties load하는 방법  (0) 2018.10.11
AndroidManifest.xml & permission  (0) 2018.10.05
FrameLayout & <merge />태그  (0) 2018.10.05
Android WebView Session 제거  (0) 2018.09.18