대화 상자
현재 액티비티 앞에서 보여지는 작은 윈도우로 정의, 대화상자 등장시 현재 액티비티는 포커스를 잃음용도 1. AlertDialog : 0~3개 버튼을 가질 수 있는 기본적인 대화상자 2. ProgressDialog : 진행을 나타내는 휠이나 바를 표시하는 대화 상자 3. DatePickerDialog : 사용자가 날짜를 선택할 수 있도록 하는 대화 상자 4. TimePickerDialog : 사용자가 시간을 선택할 수 있도록 하는 대화 상자 5. 커스텀 대화 상자 : 사용자가 직접 대화상자를 작성하려면 Dialog 클래스를 상속받아서 확장 가능 대화 상자 생성 showDialog(id) : 애플리케이션 내에서 대화상자 필요시 나타나게 함 onCreateDialog(id) : 특정 대화상차 최초 요청시 호출하는 콜백 메소드, 처음 단 한번만 호출 alertDialog.Builder() : 실제 대화 상자 생성에 builder 객체 사용 onPrepareDialog(int, Dialog) : 대화 상자가 실제로 화면에 표시되기 전에 안드로이드가 호출하는 메소드 대화 상자가 오픈될 때마다 변경해야 할 요소가 있으면 이 메소드를 재정의 dismissDialog(id) : 대화 상자를 화면에서 제거할 때 사용, dismiss()에 의해 Dialog객체 상태 액티비티에 보존 removeDialog(id) 호출시 객체 완전히 제거 가능 ![]() 많이 보시던 화면이죠?ㅎㅎㅎ 1. AlterDialog Dialog 클래스를 상속받은 클래스 AlterDialog.Builder 객체를 생성하고 이 객체의 메소드들을 호출하여 속성을 지정하고 생성 setTitle(charSequence) 대화상자 제목 설정 setItems() - 설정가능한 목록을 추가, 매개변수로 항목의 배열과 OnClickListener를 받음 ![]() (AlterDialog의 구조) 체크박스, 라디오 버튼 추가 setMultiChoiceItems() - 체크 박스를 부착한 대화상자 작성 setSingleChoiceItems() - 라디오 버튼을 부착한 대화상자 액티비티가 활성화되어 있는 동안 대화 상자가 이전에 선택되었는 항목 기억, 액티비티를 빠져나가면 이전에 선택되었던 항목들의 정보가 사라짐 setCancelable(false | true) - 모달상자와 비슷한 개념 ![]() 2. ProgressDialog AlertDialog 클래스의 확장으로 휘링나 바의 형태로 작업의 진행 정도를 표시하는 클래스 진행정도를 알수 없는 경우 휠이 사용, 진행정도를 파악할 수 있느 경우 바가 사용 ProgressDialog dialog = ProgressDialog.show(MyActivity.this, "","Loading. Please wait...", true, true); 매개변수 : 현재 액티비티, 제목, 메시지, 진행정도 확정/불확정 여부, 취소 가능 여부 프로그레스 바 형태로 표시 setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); 호출 setProgress(30); : 진행정도를 30%로 설정 3. DatePickerDialog 사용자가 날짜를 선택할 수 있도록 하는 대화 상자 ![]() 5. Custom dialog 사용자가 임의로 대화상자를 디자인하는 상자 이미지 뷰와 텍스트 뷰 등을 사용해 대화상자를 만들기가 가능 ![]()
|
|||||||||||