Sil*_*yte 5 android kotlin android-binding-adapter
我有一个ViewModel:
val imageUrl = ObservableField<String>()
Run Code Online (Sandbox Code Playgroud)
我的布局XML有:
<ImageView
...
app:url="@{viewModel.imageUrl}"
.../>
Run Code Online (Sandbox Code Playgroud)
我有一个顶级函数的BindingAdapters文件:
@BindingAdapter("url")
fun loadImage(view: ImageView, url: String?) {
...
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
data binding error msg:Cannot find the setter for attribute 'app:url' with parameter type android.databinding.ObservableField<java.lang.String> on android.widget.ImageView.
Run Code Online (Sandbox Code Playgroud)
知道为什么会这样吗?这与我在Java中设置绑定适配器的方式完全相同,减去了静态函数.
Sil*_*yte 23
这个问题是由应用程序的build.gradle中缺少kapt引起的.将以下内容添加到build.gradle并用"kapt"替换所有"annotationProcessor"依赖项可修复此问题.
apply plugin: 'kotlin-kapt'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1880 次 |
| 最近记录: |