携帯電話のカメラを使用して写真をキャプチャし、それをイメージビューに設定します。メモリ不足エラーが発生したため、次のコードを使用してビットマップを圧縮することにしました。エラーはなくなりましたが、私のビットマップも同様です。imageviewに何も表示されません。私は何が間違っているのですか。次のコードは私のonActivityResultにあります。
InputStream input = getContentResolver().openInputStream(
data.getData());
//Decode image size
BitmapFactory.Options o = new BitmapFactory.Options();
o.inJustDecodeBounds = true;
BitmapFactory.decodeStream(input,null,o);
//The new size we want to scale to
final int REQUIRED_SIZE=40;
//Find the correct scale value. It should be the power of 2.
int scale=16;
while(o.outWidth/scale/2>=REQUIRED_SIZE && o.outHeight/scale/2>=REQUIRED_SIZE)
scale*=2;
//Decode with inSampleSize
BitmapFactory.Options o2 = new BitmapFactory.Options();
o2.inSampleSize=scale;
bitmap=BitmapFactory.decodeStream(input, null, o2);
firstImageButton.setImageBitmap(bitmap);