Android Kotlin-加载ImageView内的图像

Android Kotlin-加载ImageView内的图像,android,kotlin,android-glide,Android,Kotlin,Android Glide,这就是我尝试过的 Glide .with(context) .load(imgUrl) .listener(object : RequestListener<Drawable>{ override fun onLoadFailed(e: GlideException?, model: Any?, target: Target<Drawable>?, isFirstResource: Boole

这就是我尝试过的

    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)
对象上的第一个错误:

对象不是抽象的,并且未在ResourceReadyResource:Drawable!上实现抽象成员公共抽象乐趣!,型号:任何!,目标:目标!,数据源:数据源!,isFirstResource:Boolean:在com.bumptech.glide.request.RequestListener中定义的布尔值

可绘制图形的第二个错误:

注释类目标不需要类型参数

第二次覆盖时出现第三个错误:

“onResourceReady”不覆盖任何内容


这里怎么了?或者是否有其他解决方案???

发生这些错误是因为您导入了错误版本的目标类。您应该从com.bumptech.glide.request.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
    }
}

发生这些错误是因为您导入了错误版本的目标类。您应该从com.bumptech.glide.request.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
    }
}