
- 제목과 설명 넣기
AlertDialog.Builder(this) .setTitle("Title")//제목 .setMessage("Hello, This is message")//내용 .create()//만들기 .show()//보여주기

- 버튼 추가하기
AlertDialog.Builder(this) .setTitle("Title") .setMessage("Hello, This is message") .setPositiveButton("ok", object : DialogInterface.OnClickListener { override fun onClick(dialog: DialogInterface, which: Int) { Log.d("MyTag", "positive") } }) .setNegativeButton("cancel", object : DialogInterface.OnClickListener { override fun onClick(dialog: DialogInterface, which: Int) { Log.d("MyTag", "negative") } }) .setNeutralButton("neutral", object : DialogInterface.OnClickListener { override fun onClick(dialog: DialogInterface, which: Int) { Log.d("MyTag", "neutral") } }) .create() .show()

val array = arrayOf("dog", "cat", "cow")
AlertDialog.Builder(this)
.setTitle("list")
.setItems(array, object : DialogInterface.OnClickListener {
override fun onClick(dialog: DialogInterface, which: Int) {
val currentItem = array[which]
Log.d("MyTag", "currentItem : $currentItem")
}
})
.show()
4. 체크박스
val checkedArray = booleanArrayOf(true, false, true)
AlertDialog.Builder(this)
.setTitle("checkbox")
.setMultiChoiceItems(array, checkedArray, object : DialogInterface.OnMultiChoiceClickListener {
override fun onClick(dialog: DialogInterface, which: Int, isChecked: Boolean) {
Log.d("MyTag", "which : $which, isChecked : $isChecked")
checkedArray[which] = isChecked
}
})
.setPositiveButton("ok", object : DialogInterface.OnClickListener {
override fun onClick(dialog: DialogInterface?, which: Int) {
Log.d("MyTag", "checkedItems : ${checkedArray.contentToString()}")
}
})
.show()
5. 라디오버튼
var checkedItemPosition = 0
AlertDialog.Builder(this)
.setTitle("radio")
.setSingleChoiceItems(array, checkedItemPosition, object : DialogInterface.OnClickListener {
override fun onClick(dialog: DialogInterface, which: Int) {
Log.d("MyTag", "which : $which")
checkedItemPosition = which
}
})
.setPositiveButton("ok", object : DialogInterface.OnClickListener {
override fun onClick(dialog: DialogInterface?, which: Int) {
Log.d("MyTag", "checkedItemPosition : $checkedItemPosition")
}
})
.show()

6.커스텀 다이얼로그
글이 길어 링크로 대체 : https://jhshjs.tistory.com/59
참고 링크 대체 : https://limheejin.tistory.com/190