ビットマップのデコードに問題があります。これは私のコードです:
public static Bitmap loadujSmallBitmapeczke(File file) {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(file.getAbsolutePath(), options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
options.inSampleSize=4;
options.inJustDecodeBounds = false;
return BitmapFactory.decodeFile(file.getAbsolutePath(), options);
}
ここで、SDカードから画像を取得するために使用します:
public class ServiceImages1 extends LinearLayout{
public ServiceImages1(Context context, String id) {
super(context);
init(id);
}
public ServiceImages1(Context context, AttributeSet attrs, String id) {
super(context, attrs);
init(id);
}
private void init(String id) {
File file;
file = new File("/sdcard/DinEgen/"+id);
ImageView imageView = new ImageView(getContext());
//imageView.setImageURI(Uri.fromFile(file));
imageView.setImageBitmap(HejSokolyLadujBMP.loadujSmallBitmapeczke(file));
addView(imageView);
}
}
id は私のイメージに名前を付けます。
エラーが発生します:decoder->decode returned false
。どうすればこれを修正できますか? 問題はどこですか?
編集:私の写真はSDカードにあるので、URLでソリューションを使用できません。私が得たのはファイルへのパスだけです。