Как пропустить или избежать опции "пересдать и просмотреть" после съемки фотографии с камеры с помощью ACTION_IMAGE_CAPTURE
Я хочу отображать изображение, когда я нажимаю на фотографию и устанавливаю на свое изображение без пользователя, выберите "да" или "нет".
Я больше разбираюсь в этом, и я также очень хорошо знаю, что приложение камеры само по себе дает вам возможность просматривать/воспроизводить изображение, и после того, как изображение будет принято, это отобразит его действие. Но я хочу, не просмотрев/повторить отображение активности...
Я стараюсь использовать этот код
Initilize
Uri mImageCaptureUri;
Кнопка Click on
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
File file = new File(Environment.getExternalStorageDirectory(),
"tmp_avatar_" + String.valueOf(System.currentTimeMillis()) + ".jpg");
mImageCaptureUri = Uri.fromFile(file);
try {
intent.putExtra(MediaStore.AUTHORITY, true);
intent.putExtra("return-data", true);
intent.putExtra(MediaStore.EXTRA_OUTPUT, mImageCaptureUri);
startActivityForResult(intent, PICK_FROM_CAMERA);
} catch (Exception e) {
e.printStackTrace();
}
onActivityResult
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Bitmap bitmap = null;
mPath = mImageCaptureUri.getPath();
System.out.println("THE PAtH:_" + mPath);
BitmapFactory.Options o2 = new BitmapFactory.Options();
bitmap = BitmapFactory.decodeFile(mPath, o2);
ivSelfie.setImageBitmap(bitmap);
}
Когда я нажимаю на фотографию, чем я. Возьмите этот экран, чтобы выбрать "да" или "нет".
Но мое требование не выбирает задачу просмотра/возврата и прямое задание на ImageView при отображении активности, когда просто нажимают и устанавливают.....
![введите описание изображения здесь]()
Ответы
Ответ 1
На самом деле довольно полезно иметь подтверждение взятой фотографии. Но, если вы действительно этого не хотите, вам нужно использовать SurfaceView внутри вашего приложения и показать поток камеры здесь. Есть примеры из примера, как это сделать, например, рассмотрим, что один.
Ответ 2
Использовать метод setImageURI()
он получит растровое изображение из uri и настроит его для вас.
Да, он установит погоду изображения, которую пользователь нажимает ok
или cancel
, независимо от того, что ваш файл существует по указанному пути во время запуска.
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PICK_FROM_CAMERA) {
// only one line code
ivSelfie.setImageURI(mImageCaptureUri);
}
}
Ответ 3
Вы не можете избежать этого экрана. Причина в том, что при использовании нового MediaStore.ACTION_IMAGE_CAPTURE
вы используете другое приложение камеры для щелчка изображения. Отображение этого экрана может быть функциональностью по умолчанию. Этот экран будет отличаться на разных устройствах в зависимости от приложения камеры.
Итак, чтобы избавиться от этого, единственное, что вы можете сделать, - это реализовать свою пользовательскую камеру вместо использования приложения камеры по умолчанию.
Ответ 4
В соответствии с приложением камеры по умолчанию вы не можете нарушить эту функциональность. Вместо этого вы можете использовать SurfaceView для захвата изображения внутри вашего приложения. Посмотрите ответ.
Возможно, эта ссылка вам поможет.
Спасибо