private void cameraOn() {
// TODO Auto-generated method stub
camera = Camera.open();
parameters = camera.getParameters();
parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameters);
}
private void cameraOff() {
// TODO Auto-generated method stub
parameters.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(parameters);
camera.release();
camera = null;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent finis = new Intent (v.getContext(), MainActivity.class);
startActivityForResult(finis, 0);
}
我有这两个方法和按钮,我希望这两种方法每秒都在一个循环中工作,直到我按下按钮以打破循环并转到另一个屏幕。这些方法用于打开和关闭闪光灯。所以我希望闪光灯一直闪烁,直到我按下按钮。我试过线程,但我不能做每一个方法只工作一秒钟,所以我希望有人可以帮助我。谢谢!
答案 0 :(得分:0)
我确定你可以使用的是计时器对象,但我会做类似的事情:
long lastTime = 0;
boolean torchIsOn = false;
long currentTime = System.currentTimeMillis();
if (currentTime - lastTime >= 1000) {
if (torchIsOn) {
cameraOff();
torchIsOn = false;
} else {
cameraOn();
torchIsOn = true;
}
lastTime = currentTime;
}
这只是我的头脑,所以希望这有效。 ;)