Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用android摄像头拍照后,将用户带回上一个活动_Java_Android_Android Camera_Android Activity - Fatal编程技术网

Java 使用android摄像头拍照后,将用户带回上一个活动

Java 使用android摄像头拍照后,将用户带回上一个活动,java,android,android-camera,android-activity,Java,Android,Android Camera,Android Activity,我正在android上开发与摄像头相关的应用程序。我想要的是,当用户拍照时,他应该立即被带到之前的活动中。现在我的代码所做的是当用户拍照时,屏幕底部会出现两个按钮,即保存和放弃。所以我不想这样。拍照时,用户应直接导航到上一个活动。你怎么能做到这一点 这是我的密码 public class CameraActivity extends Activity implements View.OnClickListener { ImageView iv; Button bCapture, bSetWall

我正在android上开发与摄像头相关的应用程序。我想要的是,当用户拍照时,他应该立即被带到之前的活动中。现在我的代码所做的是当用户拍照时,屏幕底部会出现两个按钮,即保存和放弃。所以我不想这样。拍照时,用户应直接导航到上一个活动。你怎么能做到这一点

这是我的密码

public class CameraActivity extends Activity implements View.OnClickListener {
ImageView iv;
Button bCapture, bSetWall;
Intent i;
int CameraResult = 0;
Bitmap bmp;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    initialize();
    InputStream is = getResources().openRawResource(R.drawable.ic_launcher);
    bmp = BitmapFactory.decodeStream(is);
}

private void initialize() {
    iv = (ImageView)findViewById(R.id.ivCamera);
    bCapture = (Button)findViewById(R.id.bCapture);
    bSetWall = (Button)findViewById(R.id.bSetWall);
    bCapture.setOnClickListener(this);
    bSetWall.setOnClickListener(this);
}

public void onClick(View v) {
    switch(v.getId()) {
    case R.id.bCapture:
        i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(i, CameraResult);
        break;
    case R.id.bSetWall:
        try {
            getApplicationContext().setWallpaper(bmp);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        break;
    }
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);
    if(resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        bmp = (Bitmap) extras.get("data");
        iv.setImageBitmap(bmp);
    }
}


}

您现在拥有的代码将使用现有的照相机应用程序拍摄照片。也就是说,它正在利用一个已经存在的活动,该活动属于安装在设备上的某个摄像头应用程序


也就是说,没有办法操纵属于其他应用程序的
活动。您必须实现自己的相机代码。

根据您的需求,我建议您使用SurfaceHolder实现自己的相机代码。这是一个很好的教程