Kotlin-Android: Unresolved Reference Databinding

Unresolved reference: databinding when importing databinding to MainActivity

Looks like I was missing the layout tag in the layout to support Databinding:

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

Android Studio Kotlin databinding: Unresolved reference on BR

What fixed the problem for me was adding the following import to my files:

import androidx.databinding.library.baseAdapters.BR

I'm not entirely certain why this works, but it got rid of all the analysis problems and the application still compiles and works fine, so I'm personally happy.

Databinding: unresolved reference for variable name

The problem is that you reference a binding class of the MainActivity which is (ActivityMainBinding) to the DetailActivity.

Therefore, it can't find a setResult() method in the ActivityMainBinding, because there is no result variable in activity_main.xml layout.

Notice that each activity has a unique generated class that bounds to its own layout.

To fix this you need to replace ActivityMainBinding with ActivityDetailBinding

class DetailActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val activityDetailBinding: ActivityDetailBinding = DataBindingUtil.setContentView(this, R.layout.activity_detail)
val model: Result = intent.getSerializableExtra("movieModel") as Result
activityDetailBinding.setResult = model
}
}


Related Topics



Leave a reply



Submit