Android 在工作线程中使用视图
编写了一个正在下载图像的实用程序类。使用这个类,我需要将这个下载的图像显示到一个图像视图中 由于图像下载代码正在工作线程中运行,因此我无法在工作线程中使用Android 在工作线程中使用视图,android,android-asynctask,picasso,Android,Android Asynctask,Picasso,编写了一个正在下载图像的实用程序类。使用这个类,我需要将这个下载的图像显示到一个图像视图中 由于图像下载代码正在工作线程中运行,因此我无法在工作线程中使用imageView来设置图像 我想知道用户在传递imageView句柄和Picasso设置图像时是如何执行类似任务的,这样我就可以在代码中使用相同的逻辑,而不是使用LocalBroadcastReceiver Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(im
imageView
来设置图像
我想知道用户在传递imageView句柄
和Picasso
设置图像时是如何执行类似任务的,这样我就可以在代码中使用相同的逻辑,而不是使用LocalBroadcastReceiver
Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
得到了我问题的答案,可能对其他人有帮助 视图句柄被传递,工作线程需要将消息发布到UI线程,如下所示
imageView.post(new Runnable() {
@Override
public void run() {
imageView.setImageBitmap(bitmap);
}
});
在主线程上运行的方法中传递图像,在
ImageView
上设置图像。您链接到picass页面,该页面链接到Github,所有源代码都供您检查……Piccasa在示例中为我们自己的实现提供了许多场景。目标接口等。重点是它是面向回调的,这是许多情况下最合适的方法。因此,只需通过UI上的回调传递位图即可。