Я пытаюсь сделать снимок, используя намерение. Моя проблема в том, что иногда после съемки моя работа, которая вызывает startActivityForResult, кажется, уничтожена, так что onCreate вызывается снова.
Вот мой код для съемки после щелчка изображения, изображение которого нужно заменить:
if (!getPackageManager().hasSystemFeature(
PackageManager.FEATURE_CAMERA)) {
Util.makeLongToast(R.string.lang_no_camera);
} else {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, TAKE_ITEM_PHOTO);
}
...
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.v(TAG, "onactivityresult called");
if (requestCode == TAKE_ITEM_PHOTO) {
if (data != null) {
imageUri = data.getData();
try {
img_photo.setImageBitmap(Media.getBitmap(
getContentResolver(), imageUri));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else
Log.w(TAG, "data is null");
}
}
Итак, я пытаюсь сделать снимок и заменить изображение изображения. Но в некоторых случаях onCreate вызывается после того, как onActivityResult был вызван и новое изображение потеряно.
Помощь приветствуется.