Posted by アイ・エス・シーシステム事業部
on 2011年06月24日 in ANDROID,Java,プログラミング,技術


先日、Android ImageViewにウェブ上の画像表示という記事の中で書いた
Web上の画像をImageViewで表示する方法でしたが・・・

実は「UrlImageView」なるものを作成している方がいらっしゃいまして、そちらの方が便利!なのでご紹介します。

CaddieDroid
ImageViewをカスタマイズして、Webの画像を表示できるようにしました

上記の記事の中で紹介されているのですがすごく助かりました。

このソースに関しては

AndroidのImageViewで、インターネット上にある画像を表示する独自ImageView。
MIT Licenseで、自由にお使いください。ソースの書き換えて等も自由にしてください。

とのことですのでMIT Licenseを理解の上で利用させていただきましょう!

GitHubで全ソース+サンプルコードをダウンロード出来るそうです。
https://github.com/sharakova/UrlImageView

Posted by アイ・エス・シーシステム事業部
on 2011年06月20日 in ANDROID,Java,プログラミング,技術


Android開発しているとAndroid開発ネタばかりに偏りがちです・・・
が、仕方ないっス。
今日のAndroidネタは・・・

Androidでウェブ上の画像を表示する必要があり
ImageViewを使用して
ImageViewのメソッド setImageURI でURI指定すればいいのかな・・・と思い

[java]


ImageView iv = (ImageView) findViewById(R.id.imageview);
Uri.Builder ub = new Uri.Builder();
ub.scheme("http");
ub.authority("~ドメイン~");
ub.path("images/image.jpg");
iv.setImageURI(ub.build());


[/java]

と記述したが・・・全然表示されない・・・

調べたところ、setImageURI ではうまくいかないという記事を発見。(下記URL)

iRSSの日記|ImageViewにhttp経由の画像を表示する方法

記事にもあるように Drawable を生成して
ImageView の setImageDrawable(Drawable drawable) にセットしてあげる必要があるらしい。

で・・・こんなふうにしました。

[java]



InputStream is = (InputStream) this.fetch(ub.build().toString());
Drawable drawable = Drawable.createFromStream(is, "");
is.close();



[/java]
Android SDK 逆引きハンドブック を参考にしました。
※Exceptionの処理は適宜入れてください。

こんな感じでDrawableを生成したら・・・

表示されました!!

※ImageViewあたりのソース(最終的)
[java]


ImageView iv = (ImageView) findViewById(R.id.imageview);
Uri.Builder ub = new Uri.Builder();
ub.scheme("http");
ub.authority("~ドメイン~");
ub.path("images/image.jpg");
InputStream is = (InputStream) this.fetch(ub.build().toString());
Drawable drawable = Drawable.createFromStream(is, "");
is.close();
iv.setImageDrawable(drawable);


[/java]

ページトップへ戻る

Get Adobe Flash player