使用 Picasso 在 Kotlin 中获取目标空错误消息

Jo.*_*... 0 android kotlin android-studio picasso

我正在尝试使用 Json API 显示图像,但我收到 Target not null 错误消息。我有三个类,一个主要类,适配器类和模型类。我已经添加了 picasso 库,名称工作正常,没有问题,图像也有问题。任何帮助表示赞赏。

主要类:

var Test:String=catObj.getString("Test")
category.Test=Test
Picasso.get().load(category.Test).into(TestImage)---TestImage is my ImageView ID.
Run Code Online (Sandbox Code Playgroud)

适配器类:

class ViewHolder(itemView:View):RecyclerView.ViewHolder(itemView) {

    fun bindItem(Test:TestModel)
    {
        var name:TextView=itemView.findViewById<TextView>(R.id.CatName)
        var picture:TextView=itemView.findViewById<TextView>(R.id.CatImage)
        name.text=Test.name
        picture.text=Test.location

    }
}
Run Code Online (Sandbox Code Playgroud)

错误日志:

  java.lang.IllegalArgumentException: Target must not be null.
Run Code Online (Sandbox Code Playgroud)

小智 6

在 kotlin 中试试这个它的工作原理

 Picasso.get().load(category.picture).into(object : com.squareup.picasso.Target {
            override fun onBitmapFailed(e: Exception?, errorDrawable: Drawable?) {
                TODO("not implemented") 
            }

            override fun onBitmapLoaded(bitmap: Bitmap?, from: Picasso.LoadedFrom?) {
                // loaded bitmap is here (bitmap)

                holder.binding.imageView.setImageBitmap(bitmap)
            }

            override fun onPrepareLoad(placeHolderDrawable: Drawable?) {}
            
        })
    }
Run Code Online (Sandbox Code Playgroud)