我创建了一个 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”中恢复它(可能的话)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)