打开相机按钮保存在最终的png屏幕截图中

时间:2018-04-17 09:40:15

标签: java android android-camera-intent

我创建了一个应用程序,使用移动相机拍摄照片,将GPS坐标显示为文本,并将图像保存到移动设备的图库。问题是保存在手机图片库中的最终屏幕截图包含“打开相机”按钮。如何从屏幕截图(png)中删除它?

enter image description here

这是我的代码:

       /* capture image */

         private void captureImage() {
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

    File photoFile = null;
    try {
        photoFile = createImageFile();
    }
    catch (IOException e) {
        e.printStackTrace();
    }
    //fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);
    String authorities = getApplicationContext().getPackageName() + ".provider";
    Uri imageUri = FileProvider.getUriForFile(this, authorities, photoFile);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);

    // start the image capture Intent
    startActivityForResult(intent, CAMERA_CAPTURE_IMAGE_REQUEST_CODE);

}

/* create image file to store photo */
  String mCurrentPhotoPath;
   private File createImageFile() throws IOException {
    // Create an image file name
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
    String imageFileName = "JPEG_" + timeStamp + "_";
    File storageDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES);
    File image = File.createTempFile(
            imageFileName,  /* prefix */
            ".jpg",         /* suffix */
            storageDir      /* directory */
    );         // Save a file: path for use with ACTION_VIEW intents
    mCurrentPhotoPath = image.getAbsolutePath();
    return image;
}

在哪里添加openCameraButton.setVisibility(View.GONE);和openCameraButton.setVisibility(View.VISIBLE); ?拍摄照片后,有没有办法不将我的图像存储到手机的默认图片目录?

1 个答案:

答案 0 :(得分:2)

根据你所附的描述和照片,我们可以假设这个按钮打开手机的相机并且(可能)拍照。如果这是真的,您可以在使用openCameraButton.setVisibility(View.GONE);截屏之前隐藏按钮的可见性,并在截取屏幕截图后再次显示该按钮:openCameraButton.setVisibility(View.VISIBLE);