您需要实现AsyncTask。它在后台线程上执行并防止主线程阻塞。您只需创建一个扩展 AsyncTask 的类,如下所示
编辑- 是的,这将在图像下载之前显示您的活动。您只需在 onCreate() 中调用 AsyncTask 的 execute() 方法。查看上面的 AsyncTasks 页面以获得完整概述。如果您的 AsyncTask 尚未完成,您只需要注意配置更改,实现起来非常简单。
您可能还想研究在内存中缓存您的位图,以防止它们被不必要地再次下载。
public class DownloadItemDetails extends AsyncTask<String, Void, ArrayList<Bitmap>{
protected ArrayList<Bitmap> doInBackground(String...params){
//Download each Bitmap here, and add them to a list to be displayed later
}
protected void onPostExecute(ArrayList<Bitmap> results){
//This method executes on the main thread, so after your downloads finish
//You can set your imageviews in your Details Page here
}
}