알림창의 생성자는 접근 제한자가 protected로 선언되어 객체를 직접 생성할 수 없다.
그 대신 AlertDialog.Builder를 이용하여 알림 창을 만들어야 한다.
AlertDialog.Builder(this).run{
setTitle("타이틀")
setMessage("메세지")
setPositiveButton("예",null)
setNegativeButton("아니오",null)
setNeutralButton("더 보기",null)
show() //show()를 꼭 해야함!
}
위의 코드처럼 만들어주면 알림 창이 뜬다! 참 쉽다!
만약 알림창에 목록을 출력하고 싶다면? 위와 비슷하지만 조금 다르다!
val items = arrayOf<String>("코알라","된장","고구마","치킨")
AlertDialog.Builder(this).run{
setTitle("타이틀")
setItems(items, object: DialogInterface.OnClickListener{
override fun onClick(p0: DialogInterface?, p1: Int){
Log.d("test",items[p1])
}
})
setPositiveButton("닫기",null)
show() //show()를 꼭 해야함!
}
위의 코드처럼 val 변수에 출력할 목록이 담긴 String 타입의 리스트를 넣고 setItems를 이용하면 된다. 단, 여기서 주의해야 할 점은 아래 onClick 메소드를 implement할 때 스펠링 확인을 꼭 해야한다! 나는 OnClick이라고 했다가 빨간 줄이 떴었다...!!
만약 체크박스가 있는 목록으로 띄우고 싶다면 setMultiChoiceItems 메소드를 이용하면 되고, 라디오 버튼으로 띄우고 싶다면 setSingleChoiceItems 메소드를 이용하면 된다. 아래의 사진은 setMultiChoiceItems를 사용하여 직접 휴대폰으로 실습해본 사진이다.
뿌-듯. 만-족.
오늘은 여기까지!
[출처] 깡샘의 안드로이드 앱 프로그래밍 with 코틀린
코틀린 어플 구현 프로젝트 - 오늘의 집 (1) (0) | 2022.05.06 |
---|
댓글 영역