Получение ошибки «Неразрешенная ссылка: ActivityMainBinding» при реализации BindView для MainActivity в Kotlin

При реализации bindView в моем файле MainActivity.kt отображается ошибка

Unsolved Reference: ActivityMainBinding

ошибка в этой строке в MainActivity.kt:

private lateinit var binding: com.example.aboutme.databinding.ActivityMainBinding

MainActivity.kt

package com.example.aboutme

import android.content.Context
import android.databinding.DataBindingUtil
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.view.View
import android.view.inputmethod.InputMethodManager

class MainActivity : AppCompatActivity() {

private lateinit var binding: com.example.aboutme.databinding.ActivityMainBinding

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
 binding = DataBindingUtil.setContentView(this, layout.activity_main)
 ...
}

Применена привязка данных к Gradle-файл уровня приложения, как показано ниже.

dataBinding{
    enabled = true
}

обернул корневой макет внутри макета, как показано ниже.

<layout xmlns:android = "http://schemas.android.com/apk/res/android"
    xmlns:app = "http://schemas.android.com/apk/res-auto">
...
...
</layout>

Пожалуйста, добавьте код вашей деятельности. Кроме того, сначала прокомментируйте private lateinit var binding, а затем очистите> пересоберите проект.

Astha Garg 13.06.2019 18:20

@Astha Я обновил код, не стесняйтесь предлагать изменения.

Jay Halani 15.06.2019 10:13

Я до сих пор не вижу DataBindingUtil.setContentView(this, layout.activity_main) код.

Astha Garg 15.06.2019 16:27

Простите меня, я сделал это сейчас.

Jay Halani 16.06.2019 07:46
1
4
66
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Выполните Сборка -> Перестроить проект после реализации BindView, и ошибка исчезнет.

Примените плагин,

apply plugin: 'kotlin-kapt'

а также использовать,

kapt 'com.android.databinding:compiler:3.1.4'

в ваших зависимостях

Другие вопросы по теме