如何从WebView获取图像URL

时间:2014-08-20 11:19:47

标签: android webview

我试图获取WebView中显示的图像的URL。 这是我的代码。完全的任务是获取url并在imageView中显示图片。 AsyncTask的一些麻烦不是什么大麻烦。

public class MyActivity extends Activity {
    ImageView imgView;
    TextView txtUrl;
    String url;
    Drawable mPict;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);

         WebView webView = (WebView) findViewById(R.id.wv);
         webView.getSettings().setJavaScriptEnabled(true);
         url = "http://webuycontent.atwebpages.com/wallbase.html";

        txtUrl = (TextView)findViewById(R.id.textView);
        imgView =(ImageView)findViewById(R.id.imgView);

        MyAsyncTask task = new MyAsyncTask();
        task.execute();
    }

    private Drawable grabImageFromUrl(String url) throws Exception {
        return Drawable.createFromStream((InputStream)new URL(url).getContent(), "src");
    }

    private class MyAsyncTask extends AsyncTask<String, Integer, String> {


        @Override
        protected String doInBackground(String... parameter) {
            try {
                mPict =  grabImageFromUrl(url);

            } catch (Exception e) {
                txtUrl.setText("Error: " + e);
            }

            return "Str";
        }

        @Override
        protected void onPostExecute(String result) {
            super.onPostExecute(result);
            imgView.setImageDrawable(mPict);
        }

    }
}

1 个答案:

答案 0 :(得分:1)

如果此特定网站存在图片网址或图片名称模式,您可以解析网页的HTML代码并找到所需的图片。您可以使用HttpClient获取页面&#39; HTML代码。

没有通用的方法从网页获取图片。