Jeśli używasz najnowszej wersji l;., Nie musisz dodawać do niej Experimental = true.
na poziomie projektu Gradle
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.21'
A na poziomie aplikacji Gradle
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
iw zależnościach.
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.21'
i importuj poniżej jako
import kotlinx.android.synthetic.main.your_layout_file_name.view.*
i przykład
import kotlinx.android.synthetic.main.item_animal.view.*
class AnimalVH(parent: ViewGroup, layoutID: Int) : BaseViewHolder<Animal>(parent, layoutID) {
override fun bindData(animal: Animal) {
itemView.tv_animal.text = animal.title
}
}
gdzie BaseViewHolder jest
abstract class BaseViewHolder<T>(parent: ViewGroup, layoutID: Int) : RecyclerView.ViewHolder(
LayoutInflater.from(parent.context).inflate(layoutID, parent, false)
) {
abstract fun bindData(model: T)
}