class MotionDialog(context : Context){
private lateinit var oncustomDialogLClickistener : CustomDialogListener
.
.
.
interface CustomDialogListener{
fun onPositiveClicked(repeat_count : Int , interval : Int , emotion : String);
fun onNegativeClicked()
}
.
.
.
fun setDialogListener(oncustomDialogLClickistener : (Int, Int , String) -> Unit) {
this.oncustomDialogLClickistener = object : CustomDialogListener{
override fun onPositiveClicked(count: Int, interval: Int , emotion: String) {
oncustomDialogLClickistener(count, interval ,emotion)
dialog.dismiss()
}
override fun onNegativeClicked() {
}
}
}
oncustomDialogLClickistener.onPositiveClicked(count , interval , emotion) // 실제로 액티비티로 값을 보내는 동작
}
액티비티 코드
onCreate 안에
motionDialog.setDialogListener { count: Int, interval: Int , emotion : String ->
Toast.makeText(this, count.toString() + " "+ interval.toString()+ " "+ emotion , Toast.LENGTH_SHORT).show()
}
'Android' 카테고리의 다른 글
android 10 대비하여 scopedStorage 구현 (0) | 2021.08.26 |
---|---|
Drawable Shape 코드로 색상 동적 변경 (0) | 2021.07.31 |
안드로이드 Dialog 만들기 (kotiln) (0) | 2021.07.30 |
팝업 프래그먼트 만들기 (0) | 2021.06.24 |
레이아웃을 이미지로 변경하고 pdf로도 저장하기 (0) | 2021.05.13 |
안드로이드 라이프사이클(android lifecycle) (0) | 2021.05.01 |
코틀린 프래그먼트 데이터 전달 (0) | 2021.04.25 |
커스텀 객체를 sharedpreferences 에 저장하고 불러오기 (0) | 2021.04.16 |