Estou convertendo parte do meu código Java para Kotlin e não entendo como instanciar interfaces definidas no código Kotlin. Como exemplo, eu tenho uma interface (definida no código Java):
public interface MyInterface {
void onLocationMeasured(Location location);
}
E depois, no meu código Kotlin, instanciamos essa interface:
val myObj = new MyInterface { Log.d("...", "...") }
e funciona bem. No entanto, quando eu converter MyInterface em Kotlin:
interface MyInterface {
fun onLocationMeasured(location: Location)
}
Recebo uma mensagem de erro: Interface MyListener does not have constructors
quando tento instancia-lo - embora me pareça que nada mudou, exceto a sintaxe. Entendo mal como as interfaces funcionam no Kotlin?
Location -> Unit
) em vez de interfaces de método único, se possível - está correto?