【发布时间】:2019-11-15 07:26:36
【问题描述】:
我正在尝试使用数据绑定加载图像。但我从来没有克服它。我的问题在哪里?下面是我的代码和布局构造。
MyItemViewModel.kt
@BindingAdapter("imageUrl")
fun loadImage(view: RoundedImageView, url: String) = Glide.with(view.context).load(url).into(view)
layout.xml
<data>
<variable
name="viewModel"
type="com.myapp.app.ui.activity.albumlist.AlbumItemViewModel"/>
</data>
<com.makeramen.roundedimageview.RoundedImageView
android:layout_width="60dp"
android:id="@+id/ivRoundedAlbum"
android:layout_marginStart="@dimen/unit_20_dp"
app:riv_corner_radius="8dp"
app:imageUrl="@{viewModel.data.cover}"
android:layout_height="60dp"/>
【问题讨论】:
-
您需要将 fun loadImage 设为静态。把
@JvmStatic给它。如果它提供错误,则将其移动到伴随对象。 -
@Hasan 确切的错误是 url 是“null”还是发生了一些编译时错误。?
-
@JeelVankhede 它给出了错误。我再次转移到模型中给出了错误。 (只有命名对象和伴生对象中的成员可以用@JvmStatic注解)
-
你的函数应该是 void remove = and but {} @HasanKucuk
-
@yash786 url 已满,但我无法加载带有数据绑定的 imageview。
标签: android kotlin android-databinding