私はxmlレイアウトファイルに画像ビューレイアウトを入れました
<ImageView
android:id="@+id/imageData"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10sp"
android:layout_marginTop="10sp"
/>
私のコードで同じように設定します..
ImageView imageData = (ImageView) findViewById(R.id.imageview);
これで、この imageData は、アクティビティの起動時に画像を保持する必要があります..これは私のコードです...</p>
public class TestImageClass extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.imagetable);
ImageView mChart = (ImageView) findViewById(R.id.imageview);
String testurl = "http://....some image name....jpg";
mChart.setTag(testurl);
new DownloadImagesTask().execute(mChart);
}
public class DownloadImagesTask extends AsyncTask<ImageView, Void, Bitmap> {
ImageView imageView = null;
@Override
protected Bitmap doInBackground(ImageView... imageViews) {
this.imageView = imageViews[0];
return download_Image((String)imageView.getTag());
}
@Override
protected void onPostExecute(Bitmap result) {
imageView.setImageBitmap(result);
}
private Bitmap download_Image(String url) {
Bitmap bm = null;
try {
Log.e("inside", "download image.....");
URL aURL = new URL(url);
URLConnection conn = aURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
bm = BitmapFactory.decodeStream(bis);
bis.close();
is.close();
Log.e("going out of", "download image.....");
} catch (IOException e) {
Log.e("Hub","Error getting the image from server : " + e.getMessage().toString());
}
return bm;
}
}
}
それでは、このビットマップ オブジェクト「bm」を ImageView に設定する方法を教えてください。