私は私のアンドロイドアプリケーションに取り組んでいます。サーバーの URL から画像を取得しlistview
、SimpleAdapter
.
イメージコードをダウンロード
public Bitmap download(final String image)
{
URL myFileUrl = null;
try {
myFileUrl = new URL("http://SERVER URL/images/"+image);
HttpURLConnection conn = (HttpURLConnection) myFileUrl.openConnection();
conn.setDoInput(true);
conn.connect();
//int length = conn.getContentLength();
InputStream is = conn.getInputStream();
bmImg = BitmapFactory.decodeStream(is);
} catch (MalformedURLException e) {
// imageLoadedHandler.sendEmptyMessage(FAILED);
} catch (IOException e) {
// imageLoadedHandler.sendEmptyMessage(FAILED);
}
return bmImg;
}
ダウンロードした画像をハッシュマップに載せる
// IMAGE HASHMAP
HashMap<String, Object> map = new HashMap<String, Object>();
map.put(TAG_PHOTO, download(c.getString(TAG_PHOTO)));
applicantsList.add(map);
解析された JSON データを ListView に更新する
adapter = new SimpleAdapter(
SignUpApplicantActivity.this, applicantsList,
R.layout.list_applicant, new String[] {
TAG_UID, TAG_NAME, TAG_OVERALL,
TAG_APPLY_DATETIME, TAG_PHOTO},
new int[] { R.id.applicantUid,
R.id.applicantName,
R.id.applicantOverall,
R.id.apply_datetime, R.id.list_image});
adapter.setViewBinder(new SimpleAdapter.ViewBinder() {
@Override
public boolean setViewValue(View view, Object data,String textRepresentation)
{
if((view instanceof ImageView) & (data instanceof Bitmap))
{
ImageView iv = (ImageView) view;
Bitmap bm = (Bitmap) data;
iv.setImageBitmap(bm);
return true;
}
return false;
}
});
// updating listView
setListAdapter(adapter);
上記の方法を試した後(私の研究からの最も近い答えだと思います)、画像はまだアプリケーションに表示されません。助けが必要です!前もって感謝します!