민프

[Android][Kotlin] CustomDialog로 엑티비티에 값을 전달해보자 본문

[Android]

[Android][Kotlin] CustomDialog로 엑티비티에 값을 전달해보자

민프야 2021. 9. 22. 12:58
CustomDialog   


private fun setNumberPicker(numberPicker: NumberPicker){
        numberPicker.minValue = 2 // 최소값
        numberPicker.maxValue = 50 // 최대값
        numberPicker.wrapSelectorWheel = false // 마지막 값에서 한번더 넘길때 0으로 넘어가는 걸 방지
    }

    interface applyButtonClickListener{
        fun onClicked(headCount: Int)
    }

    private lateinit var onClickedListener: applyButtonClickListener

    fun setOnClickedListener(listener:applyButtonClickListener) {
        onClickedListener= listener
    }

커스텀 다이얼로그에 interface를 만들자

 

 

 

엑티비티    


val create = CreateMyGalleryHeadCount_CustomDialog(this)
        create.showDialog()

        //다이얼로그에서 정의한 interface를 통해 데이터를 받아온다.
        create.setOnClickedListener(object: CreateMyGalleryHeadCount_CustomDialog.applyButtonClickListener{
            override fun onClicked(headCount: Int) {
                /*
                넘버피커에서 선택한 값을
                textViewCreateMyGalleryHeadCount 최대인원 텍스트에 넣어줌
                 */
                Log.d(TAG+ " MakeMyGallery클릭리스너","들어옴")
                Log.d(TAG+ " onClicked", headCount.toString())

                mbinding!!.textViewCreateMyGalleryHeadCount.setText(headCount.toString())
            }

        })

 

Comments