LoginSignup
0
0

More than 3 years have passed since last update.

[Android開発]Javaで画像をサーバーから取得してImageViewに設定しよう!!

Last updated at Posted at 2020-10-06

説明

画像ファイルをURLで参照して、サーバーから取得する方法です。(非同期処理)

Java

GetImagesUrl
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.widget.ImageView;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;

public class ImageUrl extends AsyncTask<Integer, Integer, Bitmap> {

    ImageView bmImage;

    public ImageUrl(ImageView bmImage) {
        this.bmImage = bmImage;
    }

    @Override
    public Bitmap doInBackground(Integer... integers) {
        Bitmap image;
        URL imageUrl = null;
        try {
            //引数の数字で取得するURLを変える
            //Staric変数として画像のURLを定義しよう
            if (integers[0] == 0) {
                imageUrl = new URL(Constants.Image1);
            } else if (integers[0] == 1) {
                imageUrl = new URL(Constants.Image2);
            } else if (integers[0] == 2) {
                imageUrl = new URL(Constants.Image3);
            }
            InputStream imageIs;
            imageIs = imageUrl.openStream();
            image = BitmapFactory.decodeStream(imageIs);
        } catch (MalformedURLException e) {
            return null;
        } catch (IOException e) {
            return null;
        }
        return image;
    }

    protected void onPostExecute(Bitmap result) {
        bmImage.setImageBitmap(result);
    }
}

実行

main
 int ImageNum;
 //ImageNumに入っている数値で対象の画像を取得して、ImageViewに設定する
 new ImageUrl((ImageView) view.findViewById(R.id.any_image)).execute(ImageNum);
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0