单击后按时相机无法完成

  • 本文关键字:相机 单击 java android
  • 更新时间 :
  • 英文 :


我想在启动方法中调用相机意图并且它工作正常,但是当我单击后退按钮时,它不会从相机返回,因为 Uri 是空的。我想通过单击后退按钮转到以前的活动。

 @Override
protected void onStart() {
    super.onStart();
  if (uri==null){
      Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
      startActivityForResult(takePictureIntent, CAMERA_REQUEST_CODE);
   }
}
@Override
public void onBackPressed() {
    super.onBackPressed();
}

创建一个带有静态布尔变量的帮助程序类,如下所示,

public class HelperUtil
    {
        public static boolean isCameraActivityBackPressed;
    }

并稍微改变你的代码,

    @Override
        protected void onStart()
        {
            super.onStart();
            if (uri == null)
            {
                if (HelperUtil.isCameraActivityBackPressed)
                {
                    // this block will execute when ActivityCamera back is pressed and uri is null
                    startActivity(new Intent(this, ReplaceWithYourActivity.class));
                } else
                {
                    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                    startActivityForResult(takePictureIntent, CAMERA_REQUEST_CODE);
                }
            }
        }
        @Override
        public void onBackPressed()
        {
            super.onBackPressed();
            HelperUtil.isCameraActivityBackPressed = true;
            Toast.makeText(ActivityCamera.this, "onbackpressed", Toast.LENGTH_LONG).show();
            startActivity(new Intent(this, ActivityCamera.class));
            finish();
        }

最新更新