80,351
社区成员
发帖
与我相关
我的任务
分享
@Override
public void surfaceCreated(SurfaceHolder holder) {
if (camera != null) {
camera.release();// 相机释放
}
camera = Camera.open();// 打开相机
camera.setDisplayOrientation(90);// 旋转镜头
parameters = camera.getParameters();// 获取相机参数集
if (parameters.getFlashMode() == null) {
flash.setImageResource(flashImg[FLASH_OFF]);
Toast.makeText(PhotographActivity.this, "无闪光灯",
Toast.LENGTH_SHORT).show();
} else {
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_AUTO);
List<Size> SupportedPreviewSizes = parameters
.getSupportedPreviewSizes();// 获取支持预览照片的尺寸
Size previewSize = SupportedPreviewSizes.get(0);// 从List取出Size
parameters
.setPreviewSize(previewSize.width, previewSize.height);// 设置预览照片的大小
List<Size> supportedPictureSizes = parameters
.getSupportedPictureSizes();// 获取支持保存图片的尺寸
Size pictureSize = supportedPictureSizes.get(0);// 从List取出Size
parameters
.setPictureSize(pictureSize.width, pictureSize.height);// 设置照片的大小
camera.setParameters(parameters);
}
maxZoom = parameters.getMaxZoom();// 获取最大像素
zoomSet.setMax(maxZoom);// 设置最大像素
try {
camera.setPreviewDisplay(cameraBG.getHolder());// 设置相机预览
} catch (IOException e) {
e.printStackTrace();
}
camera.startPreview();// 开始预览
preview = true;
}