拍照后,什么时候应该在相机上调用startPreview?使用了演示中的代码:http://developer.android.com/guide/topics/media/camera.html
在一定程度上工作,但我无法弄清楚如何让表面支架刷新,以便它准备好再次拍摄。
另外,对于我的生活,我无法弄清楚照片的去向。 另外,有没有办法让他们像普通相机一样去画廊?
在 captureButton 的onclick()
中引入startPreview()
,并使用布尔标志控制它。
例如,让标志isPicTaken
。每次单击新图片时,都应将其设置为 true,而当您开始预览时,应将其设置为 false。代码应如下所示 -
Button captureButton = (Button) findViewById(id.button_capture);
captureButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if (!isPicTaken) {
mCamera.takePicture(shutterCallback, rawCallback, jpegCallback);
} else {
mCamera.startPreview();
isPicTaken = false;
}
}
});
请注意,mCamera.takePicture
这里使用所有三个回调,即 (shutterCallback, rawCallback, jpegCallback)
。上次回调的用法在你检查过的文档中给出,其余两个回调可以像-
// Called when shutter is opened
ShutterCallback shutterCallback = new ShutterCallback() {
public void onShutter() {
isPicTaken = true; //set flag true only when shutter is called.
//
}
};
// Handles data for raw picture
PictureCallback rawCallback = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
//
}
};
检查此示例,如果您是全新的,您甚至可以使用它作为参考。希望这有帮助。