首页 文章 精选 留言 我的

精选列表

搜索[远程工具链],共10015篇文章
优秀的个人博客,低调大师

Android多线程下载远程图片

修改后的代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 import java.io.InputStream; import java.lang.ref.WeakReference; import java.net.HttpURLConnection; import java.net.URL; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.AsyncTask; import android.util.Log; import android.widget.ImageView; /** * @类名:ImageDownloader * @功能描述:优化的ImageDownloader, 不带缓存,在线下载,用户头像请使用。 * @作者: William Xu * @创建日期:2013-6-7 * @修改人: * @修改日期: * @修改备注: * @版本号:1.0 */ public class ImageDownloader { public void download(String url, ImageView imageView) { BitmapDownloaderTask task = new BitmapDownloaderTask(imageView); task.execute(url); } class BitmapDownloaderTask extends AsyncTask<String, Void, Bitmap> { private final WeakReference<ImageView> imageViewReference; // 使用WeakReference解决内存问题 public BitmapDownloaderTask(ImageView imageView) { imageViewReference = new WeakReference<ImageView>(imageView); } @Override protected Bitmap doInString... params) { // 实际的下载线程,内部其实是concurrent线程,所以不会阻塞 Bitmap bitmap = null ; try { URL imageUrl = new URL(params[ 0 ]); HttpURLConnection conn = (HttpURLConnection) imageUrl .openConnection(); conn.setConnectTimeout( 30000 ); conn.setReadTimeout( 30000 ); conn.setInstanceFollowRedirects( true ); InputStream is = conn.getInputStream(); bitmap = BitmapFactory.decodeStream(is); } catch (Exception ex) { Log.e( "" , "getBitmap catch Exception...\nmessage = " + ex.getMessage()); } return bitmap; } @Override protected void onPostExecute(Bitmap bitmap) { // 下载完后执行的 if (isCancelled()) { bitmap = null ; } if (imageViewReference != null ) { ImageView imageView = imageViewReference.get(); if (imageView != null && bitmap != null ) { imageView.setImageBitmap(bitmap); // 下载完设置imageview为刚才下载的bitmap对象 } } } } } 本文转自william_xu 51CTO博客,原文链接:http://blog.51cto.com/williamx/1218518,如需转载请自行联系原作者

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册