我已经创建了一个android应用程序,它允许用户通过按下一个按钮来打开和关闭闪光灯。如果用户打开闪光灯并改变方向,则指示灯将被关闭。为什么会这样。请看下面我使用的代码。
cam = Camera.open();
final Parameters p = cam.getParameters();
torch_switch = (Button)findViewById(R.id.torch_switch);
torch_switch.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
if(isLightOn) {
torch_switch.setText("Switch ON Torch");
p.setFlashMode(Parameters.FLASH_MODE_OFF);
cam.setParameters(p);
cam.stopPreview();
isLightOn = false;
} else {
torch_switch.setText("Switch OFF Torch");
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
cam.startPreview();
isLightOn = true;
}
}
});
最佳答案
改变方向会导致应用程序破坏其当前活动,然后重新创建,基本上是从头开始重新启动应用程序。
您可以通过在清单中不允许方向更改来修复它,或者将当前模式存储在“onstop”方法中,然后可能在“onstart”中还原它。
关于android - 更改方向时闪光灯关闭,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12637377/