【Android】 아빠와 사용할 수있는 AlertDialog 목록

소개



평소 사용하고 싶은 장면에서 사용법을 잊는 AlertDialog를, 아빠와 사용하기 위한 비망록입니다.
@suzukihr 씨가 쓰여 있다【 복사하고 즉시 사용할 수있는 경고 대화 상자 모음 】를 참고로,
한층 더 초보자용으로 추기해 Kotlin로 재작성한 것이 됩니다.

※Activity나 Fragment 등에 직접 복사하여 사용할 수 있습니다만,
화면 회전시 메모리 누수가 발생할 수 있으므로,
DialogFragment를 상속한 클래스를 만들어 사용하는 것이 좋습니다.

일반 대화상자(예)




AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("タイトル")
        .setMessage("メッセージ")
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .show()

통상 다이얼로그(Yes・No)




AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("タイトル")
        .setMessage("メッセージ")
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .setNegativeButton("No", { dialog, which ->
            // TODO:Noが押された時の挙動
        })
        .show()

통상 다이얼로그(Yes·No·그 외)




AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("タイトル")
        .setMessage("メッセージ")
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .setNegativeButton("No", { dialog, which ->
            // TODO:Noが押された時の挙動
        })
        .setNeutralButton("その他", { dialog, which ->
            // TODO:その他が押された時の挙動
        })
        .show()

일반 대화상자(아이콘 포함)




AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("タイトル")
        .setMessage("メッセージ")
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .setNegativeButton("No", { dialog, which ->
            // TODO:Noが押された時の挙動
        })
        .setNeutralButton("その他", { dialog, which ->
            // TODO:その他が押された時の挙動
        })
        .setIcon(R.mipmap.ic_launcher)
        .show()

목록 항목 선택 대화 상자



리스트 표시에서는 setItems 를 사용합니다.

제1 인수(CharSequence[]):리스트 표시하는 문자 배열
제2 인수(OnClickListener):항목 클릭시의 클릭 리스너


val strList = arrayOf("りんご","みかん","ぶどう")

AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("リスト選択ダイアログ")
        .setItems(strList, { dialog, which ->
            // TODO:アイテム選択時の挙動
        })
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .show()

라디오 버튼 항목 선택 대화상자



라디오 버튼 표시에서는 setSingleChoiceItems 를 사용합니다.

제1 인수(CharSequence[]):리스트 표시하는 문자 배열
제2 인수(int):디폴트로 체크를 넣는 위치
제3 인수(OnClickListener):항목 클릭시의 클릭 리스너


val strList = arrayOf("りんご","みかん","ぶどう")

AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("ラジオボタン選択ダイアログ")
        .setSingleChoiceItems(strList, 0, { dialog, which ->
            // TODO:アイテム選択時の挙動
        })
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .show()

체크박스 선택 대화상자



체크 박스 표시에서는 setMultiChoiceItems 를 사용합니다.

제1 인수(CharSequence[]):리스트 표시하는 문자 배열
제 2 인수 (boolean []) : 디폴트로 체크를 둔 상태를 관리하는 배열
제3 인수(OnClickListener):항목 클릭시의 클릭 리스너


val strList = arrayOf("りんご","みかん","ぶどう")
val checkedItems = booleanArrayOf(true, false, false)

AlertDialog.Builder(this) // FragmentではActivityを取得して生成
        .setTitle("チェックボックス選択ダイアログ")
        .setMultiChoiceItems(strList, checkedItems, { dialog, which, isChecked ->
            // TODO:アイテム選択時の挙動
        })
        .setPositiveButton("OK", { dialog, which ->
            // TODO:Yesが押された時の挙動
        })
        .show()

기타 설정 관련



■setCancelable
대화 상자의 표시 범위를 벗어날 때 대화 상자가 닫힐지 여부를 설정합니다.

setCancelable (cancelable : Boolean)

■setView
직접 만든 레이아웃이나 View를 직접 설정할 때 사용합니다.

setView(layoutResId : Int)
    or
setView(view : View)

좋은 웹페이지 즐겨찾기