0

如何将我作为 JSON 获得的图像设置为 imageview?下面是我的代码..

 try {
               JSONObject responseObject = json.getJSONObject("responseData");
               JSONArray resultArray = responseObject.getJSONArray("results");
               private ArrayList<Object> listImages;
               listImages = getImageList(resultArray);
               } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
    }

现在,我想将图像设置为 imageview,如下所示...

 private int[] GalImages = new int[] { R.drawable.h, R.drawable.i};
    public Object instantiateItem(ViewGroup container, int position) {
            ImageView imageView = new ImageView(context);
            int padding = context.getResources().getDimensionPixelSize(R.dimen.padding_medium);
            imageView.setPadding(padding, padding, padding, padding);
            imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
            imageView.setImageResource(GalImages[position]);

            ((ViewPager) container).addView(imageView, 0);
            return imageView;
        }

在这里,我默认设置了可绘制文件夹中的图像,但是我必须将我得到的图像设置为 json,我该怎么做?

4

1 回答 1

0

在这里,我默认设置了可绘制文件夹中的图像,但是我必须将我得到的图像设置为 json,我该怎么做?

要从服务器返回的 JSON 中显示来自 web url 的图像,您需要首先下载可用缓存或存储中的图像。下载图像后获取位图并将其传递给ImageView.setImageBitmap

   private Bitmap download_Image(String url) {

        Bitmap bmp =null;
        try{
            URL ulrn = new URL(url);
            HttpURLConnection con = (HttpURLConnection)ulrn.openConnection();
            InputStream is = con.getInputStream();
            bmp = BitmapFactory.decodeStream(is);
            if (null != bmp)
                return bmp;

            }catch(Exception e){}
        return bmp;
    }

使用or来避免调用download_Image方法。AsyncTaskHandlerNetworkOnMainThreadException

如果您使用 ListView 或 GridView 视图,则使用Universal Image Loader

于 2013-10-28T17:50:55.900 回答