1

画像を表示するためのjsonがあります。私も動的に作成しますimageView。logcat で JSON を取得し、JSONarrayListから画像を分離しました。動的に作成された 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);



        }
}
4

1 に答える 1