android-studio - 如何使用毕加索将图像从 url 加载到小部件中的 imageview
问题描述
我尝试使用 Picasso 将图像加载到小部件上的图像视图中,但是当我运行图像视图返回空白时,没有图像仅显示为白色空白
这是我的代码
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
}
}
解决方案
我认为问题出在您的毕加索代码中。首先检查 data[position].imagepath 返回正确的图像路径。如果您仍然有问题,请尝试仅将图像显示到一个视图中。例如你使用: rv 是一个图像视图
Picasso.get()
.load(data[position].image_path)
.into(rv)
推荐阅读
- stripe-payments - 更新标准连接帐户时条带化 webhook
- javascript - 为什么 object.eval() 有效,方括号返回未定义?
- r - 动态生成的 tabItems
- windows - 单个应用程序的跨平台开发可能会出现哪些问题?
- neo4j - Neo4j Cypher - 以 JSON 格式返回的标签计数
- bluetooth - 在哪里可以找到服务数据 UUID?
- asp.net-core-2.1 - 如何在 ASP.NET Core 中按环境执行 TagHelper?
- c# - 对数据透视表的行和列进行排序
- java - 如何在内部存储的控制台文件中读取和打印?
- amazon-web-services - Packer 将现有的 ebs-volume 附加到 AMI