/** * 显示单个网络图片 */ public class UrlImageView { private ImageView tiv; private String image; private Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.what==2){ Bitmap bit = (Bitmap) msg.obj; tiv.setImageBitmap(bit); } } }; /** * @param tiv 要显示图片的控件 * @param image 网络路径 */ public UrlImageView(ImageView tiv, String image) { this.tiv = tiv; this.image = image; } /** * 读取服务端返回的String类型图片,并通知主线程显示 */ public void ImData() { new Thread(){ @Override public void run() { super.run(); try { URL url = new URL(image); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET");//设置请求方式这里的方式必须为大写 connection.setConnectTimeout(5000);//设置超时的时间 int code = connection.getResponseCode();//获得状态码 if (code == 200) { InputStream is = connection.getInputStream(); Bitmap bitmap = BitmapFactory.decodeStream(is);//写入一个bitmap流 Message m = new Message(); m.what = 2; m.obj = bitmap; handler.sendMessage(m); } } catch (MalformedURLException e) { e.printStackTrace(); }catch (Exception e){ e.printStackTrace(); } } }.start(); } }
显示单个网络图片
最新推荐文章于 2021-09-30 10:48:47 发布