1. ホーム
  2. アンドロイド

[解決済み】Androidでビットマップのサイズを変更する方法は?

2022-03-24 20:44:45

質問

リモートデータベースからBase64文字列のビットマップを取得しました。 encodedImage はBase64で画像を表す文字列)。

profileImage = (ImageView)findViewById(R.id.profileImage);

byte[] imageAsBytes=null;
try {
    imageAsBytes = Base64.decode(encodedImage.getBytes());
} catch (IOException e) {e.printStackTrace();}

profileImage.setImageBitmap(
    BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length)
);

profileImage は私の ImageView です。

しかし、この画像をリサイズしてから ImageView を使用しています。120x120にリサイズする必要があります。

誰かリサイズするためのコードを教えてください。

私が見つけた例は、base64文字列を取得したビットマップに適用することができませんでした。

解決方法は?

変更する。

profileImage.setImageBitmap(
    BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length)

へ。

Bitmap b = BitmapFactory.decodeByteArray(imageAsBytes, 0, imageAsBytes.length)
profileImage.setImageBitmap(Bitmap.createScaledBitmap(b, 120, 120, false));