Android Kotlin - 加载 ImageView 内的图像
Posted
技术标签:
【中文标题】Android Kotlin - 加载 ImageView 内的图像【英文标题】:Android Kotlin - On image inside ImageView loaded 【发布时间】:2020-08-27 15:00:27 【问题描述】:这是我尝试过的
Glide
.with(context)
.load(imgUrl)
.listener(object : RequestListener<Drawable>
override fun onLoadFailed(e: GlideException?, model: Any?, target: Target<Drawable>?, isFirstResource: Boolean): Boolean
return false
override fun onResourceReady(resource: Drawable?, model: Any?, target: Target<Drawable>?, dataSource: DataSource?, isFirstResource: Boolean): Boolean
return false
)
.into(holder.image)
object
上的第一个错误:
对象不是抽象的,不实现抽象成员 public abstract fun onResourceReady(resource: Drawable!, model: Any!, target: Target!, dataSource: DataSource!, isFirstResource: Boolean):在 com.bumptech 中定义的布尔值。 glide.request.RequestListener
Drawable
的第二个错误:
注解类 Target 没有类型参数
第二个override
的第三个错误:
'onResourceReady' 不会覆盖任何内容
这里有什么问题?还是有其他解决办法??
【问题讨论】:
【参考方案1】:出现这些错误是因为您导入了错误版本的 Target 类。您应该从 com.bumptech.glide.request.target.Target 包中导入“Target”。
import android.graphics.drawable.Drawable
import com.bumptech.glide.load.DataSource
import com.bumptech.glide.load.engine.GlideException
import com.bumptech.glide.request.RequestListener
import com.bumptech.glide.request.target.Target
object : RequestListener<Drawable>
override fun onLoadFailed(
e: GlideException?,
model: Any?,
target: Target<Drawable>?,
isFirstResource: Boolean
): Boolean
return false
override fun onResourceReady(
resource: Drawable?,
model: Any?,
target: Target<Drawable>?,
dataSource: DataSource?,
isFirstResource: Boolean
): Boolean
return false
【讨论】:
以上是关于Android Kotlin - 加载 ImageView 内的图像的主要内容,如果未能解决你的问题,请参考以下文章
在 android studio kotlin 中将数据从活动传递到片段(不重复,这些方法不起作用)
从 Firebase android kotlin 获取数据时如何显示加载的项目
Android Kotlin - 加载 ImageView 内的图像
一起来看看 Android 官推 kotlin-first 的图片加载库