Estoy convirtiendo parte de mi código Java a Kotlin y no entiendo cómo instanciar interfaces que están definidas en el código de Kotlin. Como ejemplo, tengo una interfaz (definida en el código Java):
public interface MyInterface {
void onLocationMeasured(Location location);
}
Y luego, en mi código de Kotlin, ejemplifico esta interfaz:
val myObj = new MyInterface { Log.d("...", "...") }
y funciona bien Sin embargo, cuando convierto MyInterface a Kotlin:
interface MyInterface {
fun onLocationMeasured(location: Location)
}
Recibo un mensaje de error: Interface MyListener does not have constructors
cuando intento crear una instancia, aunque me parece que nada ha cambiado excepto la sintaxis. ¿No entiendo cómo funcionan las interfaces en Kotlin?
Location -> Unit
) en lugar de interfaces de un solo método, si es posible, ¿es correcto?