我试图获取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);
}
}
}
答案 0 :(得分:1)
如果此特定网站存在图片网址或图片名称模式,您可以解析网页的HTML代码并找到所需的图片。您可以使用HttpClient获取页面&#39; HTML代码。
没有通用的方法从网页获取图片。