如果要在第一个加载图片的例子中取消线程,应该怎么做呢?
如果要在第一个加载图片的例子中取消线程,应该怎么做呢?怎么试都没成功。。。
如果要在第一个加载图片的例子中取消线程,应该怎么做呢?怎么试都没成功。。。
2016-05-30
@Override protected Bitmap doInBackground(String... params) { // 获取传递进来的参数: 因为只传进一张图片,所以只用取出数组params的第0位内容 String url = params[0]; Bitmap bitmap = null; URLConnection connection;// 定义网络连接对象 InputStream is;// 用于获取数据的输入流对象 // 将URL解析成bitmap对象(此为耗时操作,所以在doInBackground中) try { // 将url传进去,获取网络连接对象 connection = new URL(url).openConnection(); // 获取输入流接对象 is = connection.getInputStream(); // 将输入流is放到缓存器中 BufferedInputStream bis = new BufferedInputStream(is); Thread.sleep(9000);// 人为阻碍加载 // 一旦监测到cancel,则立即返回 if (isCancelled()) { Log.v("ang", "杀死"); return null;// !!!!!!!!!!!!!!!!!!! } Log.v("ang", "没有跳过"); // 将bis传入,通过decodeStream把输入流解析成bitmap bitmap = BitmapFactory.decodeStream(bis); // 关闭输入流 is.close(); bis.close(); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return bitmap;// 返回的是解析得到的bitmap对象 }
举报