在CameraManager类中加上一下代码
//-----------------------------------手电开关---------------------------------------
public void enableFlash(){
try {
if (context.getPackageManager().hasSystemFeature(
PackageManager.FEATURE_CAMERA_FLASH)) {
Camera.Parameters p = camera.getParameters();
p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void disableFlash(){
try {
if (context.getPackageManager().hasSystemFeature(
PackageManager.FEATURE_CAMERA_FLASH)) {
Camera.Parameters p = camera.getParameters();
p.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(p);
}
} catch (Exception e) {
e.printStackTrace();
}
}
按钮的点击事件设置开关
if (isOpen) {
open.setText("关闭手电筒");
cameraManager.enableFlash();
isOpen = false;
} else { // 关灯
open.setText("打开手电筒");
cameraManager.disableFlash();
isOpen = true;
}
onDestroy()中判断释放资源
if(isOpen){
cameraManager.disableFlash();
isOpen = false; // 释放手电筒
}
给扫一扫加手电筒
最新推荐文章于 2022-02-07 17:30:09 发布