所以,用androidx学习android新的体系结构组件,并且无法使用简单的绑定适配器工作
所以,这是一个简单的文本视图
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="viewmodel"
type="com.cleanandroidlearning.ui.livedatafunfragment.LiveDataFunViewModel" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.widget.TextView
android:id="@+id/textView"
android:textAlignment="center"
android:text="test"
app:testBindingAdapter="@{viewmodel.test}"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/default_margin"
android:layout_marginRight="@dimen/default_margin"
android:layout_marginTop="@dimen/default_margin"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
和绑定适配器
@BindingAdapter("app:testBindingAdapter")
fun testBindingColisse(view: View, value: Int) {
}
视图模型非常简单
class LiveDataFunViewModel() : ViewModel() {
var test: Int = 0
}
但我总是会收到此错误
android.databinding.tool.util.LoggedErrorException: Found data binding errors.
****/ data binding error ****msg:Cannot find the setter for attribute 'app:testBindingAdapter' with parameter type int on android.widget.TextView. file:/Users/kenny/working/cleanandroidlearning/app/src/main/res/layout/fragment_live_data_fun.xml loc:18:42 - 18:55 ****\ data binding error ****
你们中的任何人都可以看到我看不到的东西,或者用相同的体系结构完成一个示例吗?
编辑:发现问题
丢失了
apply plugin: 'kotlin-kapt'
在模块毕业文件中