循环中的两种方法

时间:2012-12-20 14:18:56

标签: android

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);
        }

我有这两个方法和按钮,我希望这两种方法每秒都在一个循环中工作,直到我按下按钮以打破循环并转到另一个屏幕。这些方法用于打开和关闭闪光灯。所以我希望闪光灯一直闪烁,直到我按下按钮。我试过线程,但我不能做每一个方法只工作一秒钟,所以我希望有人可以帮助我。谢谢!

1 个答案:

答案 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;
}

这只是我的头脑,所以希望这有效。 ;)