2012-12-20 2 views
0
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 초 동안 할 수 없으므로 누군가가 나를 도울 수 있기를 바랍니다. 감사!!루프의 두 가지 메소드

+2

http://whathaveyoutried.com? – njzk2

+0

만약 내가 잘못 설명하면 죄송합니다. 스레드로 시도했지만 첫 번째 방법은 1 초 동안, 두 번째는 1 초 동안 수행 할 수 없습니다. – user1918363

+0

핸들러를 사용해 보셨습니까? – njzk2

답변

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

합니다. ;)

+0

아, 분명히 단추를 누를 때까지 계속 스레드 또는 while 루프에 넣고 싶을 것입니다. 버튼의 onClickListener에서 스레드를 중지하거나 루프를 중지하는 부울을 설정합니다. – leenephi