2013-11-13 4 views
0

У меня есть json для отображения изображений. Я также динамически создаю imageView. Я получил JSON в logcat, и я также отделяю изображения от arrayList от JSON. Я хочу отображать изображения из JSON в динамически созданных imageView.Как показать изображения из json в imageview

Этот код для получения JSON:

 try{ 

      ArrayList<NameValuePair> mNameValuePair = new ArrayList<NameValuePair>(); 
      mNameValuePair.add(new BasicNameValuePair("id_product", "id_product")); 
      Log.i("NameValuePair","" + mNameValuePair); 
      JSONParser jparser = new JSONParser(); 
      result = jparser.PostConnection(URL1, null); 
      Log.i("result",""+ result); 





      JSONArray jArray = new JSONArray(result); 
      Log.i("JSON ARRAY","" + jArray); 

//   


      for(int i=0;i<jArray.length();i++){ 

       Log.i("Json Length",""+ jArray.length()); 
//    
       JSONObject tableData = jArray.getJSONObject(i); 
       image = tableData.getString("image"); 
       Log.i("imageinloop",""+ image); 

       arraylist.add(image); 
//    Log.i("ArrayList","" +arraylist); 


//    AddObjectToList(image); 

      } 
      addImagesToView(); 

      Log.i("ArrayList","" +arraylist); 
     } 
     catch (Exception e) { 
      // TODO: handle exception 
      e.printStackTrace(); 
     } 

Метод создания динамически ImageView.

public void addImagesToView() { 

     Log.i("ArrayList In Image","" +arraylist); 
     for (int i = 0; i < arraylist.size(); i++) { 

      imageButton = new ImageView(this); 

      DefaultHttpClient client = new DefaultHttpClient(); 
      Bitmap bit = null; 
      try{ 
       HttpResponse response = client.execute(new HttpGet(URL1)); 

       HttpEntity entity = response.getEntity(); 

       if(entity != null){ 
        InputStream in = entity.getContent(); 
        bit = BitmapFactory.decodeStream(in); 
        Log.i("Bitmap Value",""+ bit); 
       } 

      } 
      catch (Exception e) { 
       // TODO: handle exception 
       e.printStackTrace(); 
      } 




      imageButton.setImageBitmap(bit); 





      imageButton.setOnClickListener(new OnClickListener() { 
       @Override 
       public void onClick(View arg0) { 


       } 
      }); 

      LinearLayout.LayoutParams params = new LayoutParams(
        LinearLayout.LayoutParams.WRAP_CONTENT, 
        LinearLayout.LayoutParams.WRAP_CONTENT); 
      // for setting image margin and spacing(left,top,right,bottom) 
      params.setMargins(60, 20, 5, 5); 
      imageButton.setLayoutParams(params); 
      horizontalOuterLayouthome.addView(imageButton); 



     } 
} 
+0

что проблема с ур код ?? –

+0

Я получил json в arraylist.in arraylist, я получил изображения в формате url. поэтому я хочу отображать значение arraylist в представлении изображения. Все изображения хранятся в arraylist в формате url. – jack

+0

Как отображать изображения из arraylist в imageview ??? – jack

ответ

0

использование Универсальный Image Loader это хорошо diaplay и кэшировать изображения https://github.com/nostra13/Android-Universal-Image-Loader

File cacheDir = StorageUtils.getOwnCacheDirectory(a, "your folder"); 

// Get singletone instance of ImageLoader 
imageLoader = ImageLoader.getInstance(); 
// Create configuration for ImageLoader (all options are optional) 
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(a) 
     // You can pass your own memory cache implementation 
    .discCache(new UnlimitedDiscCache(cacheDir)) // You can pass your own disc cache implementation 
    .discCacheFileNameGenerator(new HashCodeFileNameGenerator()) 
    .enableLogging() 
    .build(); 
// Initialize ImageLoader with created configuration. Do it once. 
imageLoader.init(config); 
options = new DisplayImageOptions.Builder() 
.showStubImage(R.drawable.stub_id)//display stub image 
.cacheInMemory() 
.cacheOnDisc() 
.displayer(new RoundedBitmapDisplayer(20)) 
.build(); 

ImageView image=(ImageView)vi.findViewById(R.id.imageview); 
imageLoader.displayImage(imageurl, image,options); 
+0

Я не использую внешнюю библиотеку для получения изображений. Я хочу сделать код custome для получения изображений от json. – jack

Смежные вопросы