Na versão 1.4 do Kotlin foi adicionada a funcionalidade das interfaces funcionais, que permitem sua implementação via expressão lambda:
fun interface ListaTransacoesDelegate {
fun delegate(transacao: Transacao)
}
class ListaTransacoesActivity : AppCompatActivity() {
//...
private fun chamaDialogDeAdicao(tipo: TipoTransacao) {
AdicionaTransacaoDialog(context = this, viewGroup = viewDaActivity)
.call(tipo) { transacao ->
adiciona(transacao)
lista_transacoes_adiciona_menu.close(true)
}
}
//...
}