juliocbcotta
06/27/2019, 1:55 PMT
fun getListener(): MyListenerInterface {
return when {
parentFragment is MyListenerInterface -> parentFragment as MyListenerInterface
targetFragment is MyListenerInterface -> targetFragment as MyListenerInterface
else -> context as MyListenerInterface
}
}
kralli
06/27/2019, 1:58 PMreified
.interface MyListenerInterface
fun main() {
val listener = getListener<MyListenerInterface>()
}
inline fun <reified T> getListener(): T {
return when {
parentFragment is T -> parentFragment as T
targetFragment is T -> targetFragment as T
else -> context as T
}
}
juliocbcotta
06/27/2019, 2:01 PM