使用 Picasso 在 Kotlin 中获取目标空错误消息
Getting Target Null Error message in Kotlin using Picasso
我正在尝试使用 Json API 显示图像,但我收到 Target not null 错误消息。我有三个 classes,一个是主电源,一个是适配器,一个是型号 class。我已经添加了 picasso 库,名称工作正常,没有问题,图像是个问题。感谢任何帮助。
主要Class:
var Test:String=catObj.getString("Test")
category.Test=Test
Picasso.get().load(category.Test).into(TestImage)---TestImage is my ImageView ID.
适配器class:
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
}
}
错误日志:
java.lang.IllegalArgumentException: Target must not be null.
感谢大家的回复。我通过以下代码更改解决了它。
主要Class:
var Test:String=catObj.getString("Test")
category.Test=Test
适配器Class:
class ViewHolder(itemView:View):RecyclerView.ViewHolder(itemView) {
fun bindItem(Test:TestModel)
{
var name:TextView=itemView.findViewById<TextView>(R.id.CatName)
var picture:ImageView=itemView.findViewById<ImageView>(R.id.CatImage)
name.text=Test.name
Picasso.get().load(category.picture).into(location)
}
}
在 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?) {}
})
}
我正在尝试使用 Json API 显示图像,但我收到 Target not null 错误消息。我有三个 classes,一个是主电源,一个是适配器,一个是型号 class。我已经添加了 picasso 库,名称工作正常,没有问题,图像是个问题。感谢任何帮助。
主要Class:
var Test:String=catObj.getString("Test")
category.Test=Test
Picasso.get().load(category.Test).into(TestImage)---TestImage is my ImageView ID.
适配器class:
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
}
}
错误日志:
java.lang.IllegalArgumentException: Target must not be null.
感谢大家的回复。我通过以下代码更改解决了它。
主要Class:
var Test:String=catObj.getString("Test")
category.Test=Test
适配器Class:
class ViewHolder(itemView:View):RecyclerView.ViewHolder(itemView) {
fun bindItem(Test:TestModel)
{
var name:TextView=itemView.findViewById<TextView>(R.id.CatName)
var picture:ImageView=itemView.findViewById<ImageView>(R.id.CatImage)
name.text=Test.name
Picasso.get().load(category.picture).into(location)
}
}
在 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?) {}
})
}