update android widget (using async task) with an image from the internet(使用来自互联网的图像更新 android 小部件(使用异步任务))
问题描述
我有一个简单的 android 小部件,我想用来自互联网的图像进行更新.我可以在小部件上显示静态图像没问题.有人告诉我,您需要为此使用异步任务,而我对这些没有太多经验.
I have a simple android widget that I want to update with an image from the internet. I can display static images on the widget no problem. I am told that you need to use an async task for this and I don't have much experience with these.
这是我的小部件:
然后我有一个异步任务类来进行下载.它看起来像这样:
Then I have an async task class which does the downloading. It looks like this:
我认为我的代码已成功从互联网下载图像.
I think my code has successfully downloaded the image from the internet.
我感到困惑的是,如何从我的异步任务类中将此图像放入特定小部件的ImageView"中.要更新图像,您需要访问 3 个不同的对象:Context、AppWidgetManager 和 AppWidgetId.... 但是如何在此语句中传递所有这些对象:???
The thing I'm confused about, is how do I get this image into the "ImageView" of the specific widget from my Async task class. To update the image, you need access to 3 different objects: Context, AppWidgetManager, and AppWidgetId.... But how do I pass all of those objects inside this statement:???
谢谢!
推荐答案
一种解决方案是将 RemoteViews
作为参数传递给 DownloadBitmap
构造函数,并在 onPostExecute()
设置图片:
One solution would be to pass the RemoteViews
as an argument to the DownloadBitmap
constructor, and in onPostExecute()
to set the image:
在 onUpdate() 中:
In onUpdate():
在 DownloadBitmap 中:
and in the DownloadBitmap:
这篇关于使用来自互联网的图像更新 android 小部件(使用异步任务)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!