android - 拍照后 Activity 不会关闭 Android

标签 android

您好,我使用了 SurfaceView 并通过以下代码拍照

首先我通过这段代码开始 Activity

     startActivityForResult(new Intent(PictureEditor.this, CustomCamera.class), CAMERA_REQUEST3);

然后从这段代码中得到结果

    @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == RESULT_OK) {
        if (requestCode == CAMERA_REQUEST3) {
            BitmapFactory.Options abc = new BitmapFactory.Options();
            abc.inJustDecodeBounds = true;
            BitmapFactory.decodeFile((Environment.getExternalStorageDirectory() + File.separator + "tester.png"), abc);
            abc.inSampleSize = calculateInSampleSize(abc, w, h) + 1;
            abc.inJustDecodeBounds = false;
            view.setBackBitmap(BitmapFactory.decodeFile((Environment.getExternalStorageDirectory() + File.separator + "tester.png"), abc));

        }

现在 CustomeCamera 类的代码在下面

          // / Handles when mTakePicture is clicked
private OnClickListener mTakePictureAction = new OnClickListener() {
    @Override
    public void onClick(View v) {
        if (mCamera != null)
            mCamera.takePicture(CustomCamera.this);


    }
};

然后

        @Override
    public void takePicture(Activity activity) {
        if (mCamera != null)
            mCamera.takePicture(shutterCallback, rawCallback, jpegCallback);
        Intent returnIntent = new Intent();
        activity.setResult(mActivity.RESULT_OK, returnIntent);
        activity.finish();
    }

问题是图像已捕获但 Activity 未完成!谁能建议我该怎么做!

最佳答案

您需要在该 Activity 开始的前一个 Activity 中的 onActivityResult() 中编写完成 Activity 的代码。

所以你之前的 Activity 结束了。 . .

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
    super.onActivityResult(requestCode, resultCode, data);
    switch(requestCode)
    {
         case YOUR_REQUEST_CODE:
                               finish();
    }
}

编辑:

首先更改此代码。

Intent returnIntent = new Intent();
activity.setResult(Activity.RESULT_OK, returnIntent);
activity.finish();

然后在onActivityResult()中先检查请求码条件再在请求码条件中检查结果码条件。

关于android - 拍照后 Activity 不会关闭 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13970662/

相关文章:

android - 从文件加载时格式错误的 Json

android - Android 11.0如何使用webview加载本 map 片?

java - com.firebase.client.FirebaseException : Failed to bounce to type

java - 使用 ZXing 编码和解码 byte[]

android - 更改 EditText 下划线的颜色

java - Fragment 内的 RecyclerView 未正确显示

java - 在 Android 应用程序中拍照并将其保存到图库中

android - 通过单击/触摸外部 : 删除 fragment

java - 从字符串创建新的 JSONObject 返回 Null - JAVA/Android

Android - Material 设计 - NavigationView - 如何放置垂直滚动?