public Object fetch(String address) throws MalformedURLException,
IOException {
URL url = new URL(address);
Object content = url.getContent();
return content;
}
private Drawable ImageOperations(Context ctx, String url) {
try {
InputStream is = (InputStream) this.fetch(url);
Drawable d = Drawable.createFromStream(is, "src");
return d;
} catch (MalformedURLException e) {
return null;
} catch (IOException e) {
return null;
}
catch (Exception e)
{
return null;
}
}
try {
Drawable a =ImageOperations(this,"url"); imgView.setImageDrawable(a);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
これはうまくいきますが、「SocketException:Adressファミリがプロトコルでサポートされていないため」というアプリケーションがフリーズしています。これを修正する方法はありますか?問題を読み込んでいます
ので、洗面所独立スレッドまたはAsyncTaskを使用して、あなたのUIがフリーズしないこと(あなたのUIフリーズが理由です)おかげ
私はこのスレッドで最初の答えを試みました:http://stackoverflow.com/questions/3090650/android-loading-an-image-from-the-web-with-asynctask "DownloadImageTask" 「新しいDownloadImageTask.execute(mChart);」の部分クラスが作成されていても、eclipseで赤色になります。私は何か見落としてますか? – Johan
ああ、心配しないで、クラスの後に "()"を逃した。 – Johan