2
kCamera = Camera.open();
kCamera.Parameters cam1= k.Camera.getParameters();
cam1.setFlashMode(Parameters.FLASH_MODE_TORCH);
kCamera.setParameters(cam1);
SurfaceTexture mPreviewTexture = new SurfaceTexture(0);
try {
     kCamera.setPreviewTexture(mPreviewTexture);
} catch {
}
mCam.startPreview();

这很好用,它会打开手电筒。

但是我怎么能关掉呢?

4

1 回答 1

0

文档:

公共静态最终字符串 FLASH_MODE_OFF

在 API 级别 5 中添加的 Flash 不会被触发。

常数值:“关闭”

因此,您可以像这样定义函数:

public void turnOffFlashLight(Camera camera){
        Camera.Parameters cam1 = camera.getParameters();
        cam1.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
        kCamera.setParameters(cam1);
    }

然后,在需要时使用它:

turnOffFlashLight(kCamera);
于 2015-07-08T09:02:44.267 回答