ANDROID:删除“保存”和“放弃”按钮

Posted

技术标签:

【中文标题】ANDROID:删除“保存”和“放弃”按钮【英文标题】:ANDROID: Remove 'save' and 'discard' buttons 【发布时间】:2014-07-18 19:30:14 【问题描述】:

如何在拍摄图像后移除确认显示(“保存”和“放弃”按钮显示)?

我想在不更改应用程序功能的情况下删除第二步:在 startActivityForResult 函数之后转到 previewCapturedImage() 函数。

这是我的代码:

public class MainActivity extends Activity 

private static final int CAMERA_CAPTURE_IMAGE_REQUEST_CODE = 100;
public static final int MEDIA_TYPE_IMAGE = 1;
private static final String IMAGE_DIRECTORY_NAME = "OpenCV Demo";
private Uri fileUri;

private ImageView imgPreview;
private Button btnCapturePicture;
private FrameLayout  frameLayout;
private TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);
    if (!OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_8, this, mOpenCVCallBack))
    
        Log.e("TEST", "Cannot connect to OpenCV Manager");
    
    setContentView(R.layout.activity_main);


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

    fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);

    intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);

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

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
    // if the result is capturing Image
    if (requestCode == CAMERA_CAPTURE_IMAGE_REQUEST_CODE) 
        if (resultCode == RESULT_OK) 
            // successfully captured the image
            // display it in image view
            previewCapturedImage();
         else if (resultCode == RESULT_CANCELED) 
            // user cancelled Image capture
            Toast.makeText(getApplicationContext(),
                    "User cancelled image capture", Toast.LENGTH_SHORT)
                    .show();
         else 
            // failed to capture image
            Toast.makeText(getApplicationContext(),
                    "Sorry! Failed to capture image", Toast.LENGTH_SHORT)
                    .show();
        
    

private void previewCapturedImage() 
       //TODO something
    

【问题讨论】:

您在此处显示的相机应用程序在从主屏幕手动启动时是否包含相同的按钮? 是的,但我不需要这些按钮。 一些相机应用程序仅在使用CAMERA_CAPTURE_IMAGE_REQUEST 调用它们的情况下才会放置这些按钮。其他人总是显示它们。一般来说,没有可靠的方法来控制它们是否出现。 【参考方案1】:

如何在拍摄图像后移除确认显示(“保存”和“放弃”按钮显示)?

你不能。那不是你的应用程序。这来自用户选择的用于处理ACTION_IMAGE_CAPTURE 的活动。该活动来自其他开发人员的应用程序,欢迎该开发人员做任何该开发人员想做的事情。如果您希望将拍照委托给第三方应用程序,您将不得不接受第三方应用程序希望拍摄该照片的方式。

【讨论】:

是否可以使用 root 手机版本自动接受(选择保存按钮)? @user8430:不是真的,因为你不知道“保存按钮”是什么。有数千种设备型号附带数百种不同的默认相机应用程序。此外,还有数百个其他相机应用可供从 Play 商店或其他地方安装。欢迎用户使用其中任何一种。没有人甚至必须有一个“保存按钮”,因为他们可以使用其他东西(例如,手势)来确定用户何时想要接受图片。或者,他们可以自动“保存”图像而不给用户一个选项。

以上是关于ANDROID:删除“保存”和“放弃”按钮的主要内容,如果未能解决你的问题,请参考以下文章

带有透明文本的 Android 按钮

如何在一行中对齐 3 个按钮,android?

带有背景色调的浮动操作按钮导致错误

按下后退按钮未触发

Git:修改/放弃修改;删除/放弃删除

在 Android 中设计一个按钮