2011-12-24 3 views
0

я м загрузки изображений из описания RSS с помощьюИспользование AsyncTask для загрузки изображений

String description2 = des.get(position).toString(); 

     Spanned description = Html.fromHtml(description2, new ImageGetter() { 
      @Override 
     public Drawable getDrawable(String source) {     
      Drawable d = null; 
      try { 
         InputStream src = imageFetch(source); 
         d = Drawable.createFromStream(src, "src"); 
         if(d != null){ 
     d.setBounds(0,0,d.getIntrinsicWidth(), 
     d.getIntrinsicHeight()); 
         } 
     } catch (MalformedURLException e) { 
        e.printStackTrace(); 
      } catch (IOException e) { 
        e.printStackTrace(); 
      } 

     return d; 
     } 

      public InputStream imageFetch(String source) 
        throws MalformedURLException,IOException { 
     URL url = new URL(source); 
     Object o = url.getContent(); 
     InputStream content = (InputStream)o; 
     // add delay here (see comment at the end)  
     return content; 
     } 

     },null); 

Как я могу поместить их в AsyncTask, для того, чтобы получить прогресс бар, пока изображения не скачать? Благодаря!

+0

Посмотрите на [Android HTML ImageGetter как AsyncTask] (http://stackoverflow.com/questions/7424512/Android-HTML-imagegetter-а-AsyncTask) – user370305

ответ

0

Вы можете ознакомиться с этим tutorial, который загружает изображения из Интернета и использует индикатор выполнения. Все сделано в AsyncTask и доступен полный источник.

0

вы можете использовать этот WebImageView из generic-store-for-android

, который приспособлен от дроида-фу проекта.

вот пример использования;
-> определить внутри макета

<com.wareninja.opensource.droidfu.widgets.WebImageView 
    android:id="@+id/img_fbProfilePic" 
    android:visibility="visible" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
/> 


-> установить URL, чтобы загрузить

WebImageView fbProfilePic = (WebImageView) this.findViewById(R.id.img_fbProfilePic); 
fbProfilePic.setImageUrl("http://graph.facebook.com/100001789213579/picture"); 
fbProfilePic.loadImage(); 
Смежные вопросы