Я пробовал разные вещи, и я могу сохранить фотографию на SD-карте, сделанной с помощью камеры (не намеренной), но не могу получить эту же картинку с SD-карты и поместить ее в ImageView. Исключение всегда.Отображение фотографии с SD-карты на ImageView
Не знаю, чего не хватает, надеюсь, кто-нибудь может мне помочь:
PictureCallback jpegCallback = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
// Save the image JPEG data to the SD card
FileOutputStream fos = null;
String fileName = "";
try {
fileName = "/mnt/sdcard/DCIM/MyPicture.jpg";
fos = new FileOutputStream(fileName);
fos.write(data);
fos.close();
Toast.makeText(getBaseContext(), "Image saved:" ,
Toast.LENGTH_LONG).show();
} catch (FileNotFoundException e) {
Log.e(TAG, "File Note Found", e);
Toast.makeText(getBaseContext(), "Image couldn't be saved.",
Toast.LENGTH_LONG).show();
} catch (IOException e) {
Log.e(TAG, "IO Exception", e);
Toast.makeText(getBaseContext(), "Image couldn't be saved.",
Toast.LENGTH_LONG).show();
}
Bitmap bitmap = BitmapFactory.decodeFile(fileName);
Log.d(TAG, fileName);
mImageView.setImageBitmap(bitmap);
}
};
Я попытался это тоже:
try {
Bitmap picture = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory()
+ "/DCIM/MyPhoto.jpg");
mImageView.setImageBitmap(picture);
} catch (Exception e) {
Log.e("Error reading file", e.toString());
}
}
Это экономит изображение, но идет в улове при попытке поставить изображение в ImageView говоря, что "Ошибка чтения файла"
LogCat:
DDMS:
К сожалению, все для головной боли ... Я забыл положить mImageView = (ImageView) findViewById (R.id.imageView1);
Я бедствие :-)
использовать имя файла как String path = Environment.getExternalStorageDirectory(). ToString() + "/ DCIM/MyPicture.jpg"; –
все еще не работает – Chris
вставьте свой логарифт здесь. –