首页 文章

从imgur显示图像

提问于
浏览
0

我能够在Imgur上传一张图片,并使用API网站中给出的示例获取链接 . 我不能做的是从URL检索Bitmap或Drawable . 我找不到有关它的文档 .

URL url= "http://imgur.com/1awAsRh"
Bitmap mPic = BitmapFactory.decodeStream(url.openConnection().getInputStream());

mPic为null .

我看到网站上的图片网址是http://i.imgur.com/1awAsRh.jpg我看到图片可以是png jpg等...

有没有办法获得直接的图片网址,它是否总是相同的模式?

Tx提前!

2 回答

  • 0

    尝试使用它,它实现了AsyncTask以在后台执行操作(Android 4.0需要):

    class loadimage extends AsyncTask<Void, Void, Void> {
        ProgressDialog pdLoading = new ProgressDialog(YourClass.this);
    
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            pdLoading.setMessage("Loading Image...");
            pdLoading.show();
        }
    
        @Override
        protected void doInBackground(Void... params) {
            String stringurl = "http://imgur.com/1awAsRh"
            try {
                Bitmap bitmap = BitmapFactory.decodeStream((InputStream)new URL(stringurl).getContent());
            } catch (MalformedURLException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return null;
        }
    
        @Override
        protected void onPostExecute(String result) {
            super.onPostExecute(result);
            pdLoading.dismiss();
            // do what you want with your bitmap
            return null;
        }
    }
    

    然后在你的_2836992中这样称呼它:

    new loadimage().execute();
    

    您还需要确保在清单中包含此内容:

    <uses-permission android:name="android.permission.INTERNET" />
    
  • 0

    我解决了

    来自Imgur API页面:https://api.imgur.com/models/image

    而不是获取id param,我可以使用链接参数(来自JSON)

相关问题