Ao entrar no build.gradle (app), refiz as dependências e sicronizei, resolveu o problema.
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'
implementation 'com.github.clans:fab:1.6.4'
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
Contudo, na classe ListaTransacoesActivity.kt, está apresentando um erro de compilação . A importação "import br.com.alura.financask.R.id.*" está em cinza e na linha onde tem "lista_transacoes_adiciona_menu.close(true)", o "close" está em vermelho.
package br.com.alura.financask.ui.activity
import android.os.Bundle
import android.os.Parcel
import android.os.Parcelable
import android.support.v7.app.AppCompatActivity
import android.view.View
import android.view.ViewGroup
import br.com.alura.financask.R
import br.com.alura.financask.R.id.*
import br.com.alura.financask.delegate.TransacaoDelegate
import br.com.alura.financask.model.Tipo
import br.com.alura.financask.model.Transacao
import br.com.alura.financask.ui.ResumoView
import br.com.alura.financask.ui.adapter.ListaTransacoesAdapater
import br.com.alura.financask.ui.dialog.AdicionaTransacaoDialog
import kotlinx.android.synthetic.main.activity_lista_transacoes.*
class ListaTransacoesActivity() : AppCompatActivity(), Parcelable {
// aqui é onde setamos manualmente as transações
private val transacoes: MutableList<Transacao> = mutableListOf()
constructor(parcel: Parcel) : this() {
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_lista_transacoes)
configuraResumo()
configuraLista()// depois de importado é a mesma coisa do findViewById<ListView>(R.id.lista_transacoes_listview)
configuraFab()
}
private fun configuraFab() {
lista_transacoes_adiciona_receita
.setOnClickListener {
chamaDialogDeAdicao(Tipo.RECEITA)
}
lista_transacoes_adiciona_despesa
.setOnClickListener {
chamaDialogDeAdicao(Tipo.DESPESA)
}
}
private fun chamaDialogDeAdicao(tipo : Tipo) {
AdicionaTransacaoDialog(window.decorView as ViewGroup, this)
.chama(tipo, object : TransacaoDelegate {
override fun delegate(transacao: Transacao) {
atualizaTransacoes(transacao)
lista_transacoes_adiciona_menu.close(true)
}
})
}
private fun atualizaTransacoes(transacao: Transacao) {
transacoes.add(transacao)
configuraLista()
configuraResumo()
}
private fun configuraResumo() {
val view: View = window.decorView
val resumoView = ResumoView(this, view, transacoes)
resumoView.atualiza()
}
private fun configuraLista() {
lista_transacoes_listview.adapter = ListaTransacoesAdapater(
transacoes,
this
)
}
override fun writeToParcel(parcel: Parcel, flags: Int) {
}
override fun describeContents(): Int {
return 0
}
companion object CREATOR : Parcelable.Creator<ListaTransacoesActivity> {
override fun createFromParcel(parcel: Parcel): ListaTransacoesActivity {
return ListaTransacoesActivity(parcel)
}
override fun newArray(size: Int): Array<ListaTransacoesActivity?> {
return arrayOfNulls(size)
}
}
}
Como resolver?