如何使用毕加索将图像从 url 加载到小部件的图像视图中
How to load image from url into imageview in widget using picasso
我尝试使用 Picasso 将图像加载到小部件上的图像视图中,但是当我 运行 图像视图 return 空白时,没有图像显示只是白色空白
这是我的代码
internal class StackRemoteViewsFactory(private val context: Context, intent: Intent) :
RemoteViewsService.RemoteViewsFactory {
private val appWidgetId: Int = intent.getIntExtra(
AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID
)
......
override fun getViewAt(position: Int): RemoteViews {
val rv = RemoteViews(context.packageName, R.layout.widget_favorite_item)
GlobalScope.launch(Dispatchers.Main) {
Picasso.get().load(data[position].image_path)
.into(rv, R.id.img_widget_banner, intArrayOf(appWidgetId))
}
return rv
}
}
我认为问题出在您的 Picasso 代码中。
首先检查 data[position].imagepath return 正确的图像路径。
如果问题仍然存在,请尝试仅在一个视图中显示图像。
例如你使用:
rv 是图像视图
Picasso.get()
.load(data[position].image_path)
.into(rv)
我尝试使用 Picasso 将图像加载到小部件上的图像视图中,但是当我 运行 图像视图 return 空白时,没有图像显示只是白色空白
这是我的代码
internal class StackRemoteViewsFactory(private val context: Context, intent: Intent) :
RemoteViewsService.RemoteViewsFactory {
private val appWidgetId: Int = intent.getIntExtra(
AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID
)
......
override fun getViewAt(position: Int): RemoteViews {
val rv = RemoteViews(context.packageName, R.layout.widget_favorite_item)
GlobalScope.launch(Dispatchers.Main) {
Picasso.get().load(data[position].image_path)
.into(rv, R.id.img_widget_banner, intArrayOf(appWidgetId))
}
return rv
}
}
我认为问题出在您的 Picasso 代码中。 首先检查 data[position].imagepath return 正确的图像路径。 如果问题仍然存在,请尝试仅在一个视图中显示图像。 例如你使用: rv 是图像视图
Picasso.get()
.load(data[position].image_path)
.into(rv)