728x90
반응형
SMALL
B class -> A class callback 호출 할때,
* A class 준비 :
A class {
...
var b = B()
b.setListener{name, age ->
Log.d("log","name : ${name}")
Log.d("log","age : ${age}")
}
...
}
* B class 준비 :
B class {
...
private var listener: ((String, Int) -> Unit)? = null
...
fun setListener{listener: (String,Int) -> Unit) {
this.listener = listener
}
...
listener?.invoke("만식이",10)// A class 전달할 곳에서 호출
}
위처럼 A 에서는 호출할 초기화 작업을 해주고, 그 초기화 해주는 실제 함수는 B에서 구현한다.
그리고 B에서 구현된 부분에서 invoke 호출 하면 된다.
- 끝 -
'Kotlin Study' 카테고리의 다른 글
코루틴 간단하게 바로 사용 할 수 있는방법 (0) | 2021.03.12 |
---|---|
view binding in Class(findViewById,Kotlin) (0) | 2021.03.02 |
lateinit property 사용시 주의 (0) | 2021.01.26 |
Kotlin get set 사용법 (0) | 2021.01.26 |
AppStore version , Device installed App version 가져오기 in Kotlin (0) | 2020.07.08 |