Pass-interface als parameter in Kotlin
Möchte ich weitergeben eine Schnittstelle als parameter wie diese:
class Test {
fun main() {
test({})
//how can I pass here?
}
fun test(handler: Handler) {
//do something
}
interface Handler {
fun onCompleted()
}
}
In Java, kann ich anonyme Funktion wie test(new Handler() { .......... })
, aber ich kann dies nicht in Kotlin. Wer weiß, wie dies zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Kotlin, die Sie tun können :
Oder eine Eigenschaft auf die gleiche Weise:
Und irgendwo im code:
test(hf)
fun test(handler: () -> Unit)
(oder andere als die Einheit, wenn Sie wollen etwas zurückgeben)