【发布时间】:2018-07-19 09:05:26
【问题描述】:
我已经创建了一个绑定适配器来显示毕加索的图片,但它不起作用。我有以下错误:
发现数据绑定错误。 ****/ 数据绑定错误 ****msg:找不到参数类型为 java.lang.String 的属性“app:loadPicture”的设置器 android.widget.ImageView。 文件:/home/groupevsc.com/mathieu_labar/Documents/Projects/android-jetpack/app/src/main/res/layout/activity_detail_movie.xml loc:27:31 - 27:52 ****\数据绑定错误****
这是我的绑定适配器:
object CommonBindingUtil {
@JvmStatic
@BindingAdapter("loadPicture")
fun loadPicture(view: ImageView, text: String) {
Picasso.with(view.context)
.load(text)
.error(R.drawable.ic_movie_24)
.fit()
.placeholder(R.drawable.ic_movie_24)
.into(view)
}
}
我的 XML 有属性“app:loadPicture”:
<ImageView
android:id="@+id/picture"
android:layout_width="@dimen/material_image_simple_width"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/ic_movie_24"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:loadPicture="@{viewModel.movie.Poster}"/>
这是我的 GitHub 存储库: https://github.com/mlabar/android-jetpack/tree/tech_ajout_databinding
有人有办法解决我的问题吗?
谢谢!
【问题讨论】:
-
将
apply plugin: 'kotlin-kapt'添加到build.gradle有帮助吗? -
我不认为这是正确的,但将名称
app更改为其他加载图片属性。 -
你可以发送完整的xml文件吗?
-
@Blackbelt 谢谢你的回复,我会努力的:)
标签: android kotlin picasso android-binding-adapter