android - 如何从 url 中获取大图像?

标签 android

我使用下面的代码从 url 中获取图像,但它不适用于大图像。

我在获取那种类型的图像时是否遗漏了什么?

imgView = (ImageView)findViewById(R.id.ImageView01);
  imgView.setImageBitmap(loadBitmap("http://www.360technosoft.com/mx4.jpg"));

  //imgView.setImageBitmap(loadBitmap("http://sugardaddydiaries.com/wp-content/uploads/2010/12/how_do_i_get_sugar_daddy.jpg"));
     //setImageDrawable("http://sugardaddydiaries.com/wp-content/uploads/2010/12/holding-money-copy.jpg");
  //Drawable drawable = LoadImageFromWebOperations("http://www.androidpeople.com/wp-content/uploads/2010/03/android.png");
  //imgView.setImageDrawable(drawable);

 /* try {
     ImageView i = (ImageView)findViewById(R.id.ImageView01);
     Bitmap bitmap = BitmapFactory.decodeStream((InputStream)new URL("http://sugardaddydiaries.com/wp-content/uploads/2010/12/holding-money-copy.jpg").getContent());
     i.setImageBitmap(bitmap); 
   } catch (MalformedURLException e) {
     System.out.println("hello");
   } catch (IOException e) {
    System.out.println("hello");
   }*/
    }


 protected Drawable ImageOperations(Context context, String string,
   String string2) {
  // TODO Auto-generated method stub
  try {
   InputStream is = (InputStream) this.fetch(string);
   Drawable d = Drawable.createFromStream(is, "src");
   return d;
  } catch (MalformedURLException e) {
   e.printStackTrace();
   return null;
  } catch (IOException e) {
   e.printStackTrace();
   return null;
  }

 }

最佳答案

您正在尝试从 UI 线程中下载大图像....这将导致 ANR(应用程序无响应)

使用AsyncTask下载图像,这样,一个单独的线程将用于下载,您的 UI 线程不会锁定。

关于android - 如何从 url 中获取大图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4573175/

相关文章:

android - 你可以使用 Android 作为 NFC 标签吗

Android Flurry 事件

java - 无法从 AlarmManager 取消警报

android - EditText,如何隐藏DrawableRight

java - Camera Intent 不会将图像保存到图库

android - FireBase 云消息传递是否需要 Play 服务?

java - Android:比较 ImageButton 和资源中的图像

android - Gradle-如何为每种口味指定不同的Android * .apk构建位置?

android - ArrayAdapter 中的 Volley NetworkImage -> 有条件地加载 Drawable-Res

java - 在 Android 的 ListView 中选择项目