在我的應用程序,我有一個圖像按鈕,基本上打開和關閉閃光LED。該代碼第一次運行正常,即首先點擊它在LED上切換並在第二次點擊它將其關閉。但是,沒有發生第三次點擊。我正在測試Nexus S.Android:相機的startPreview方法不工作後,stopPreview
以下是ImageButton Click方法的代碼。
public void ToggleTorch(){
final ImageButton tt = (ImageButton)findViewById(R.id.tt);
tt.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
if (isFlashOn){
mycam.stopPreview();
isFlashOn = false;
} else {
mycam.startPreview();
isFlashOn = true;
}
}
});
}
從我認爲,它必須做的事SurfaceView,我想是不是被破壞,同時呼籲stopPreview,但我不知道..
以下是代碼爲onCreate方法。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Check if Flash Light is Available
Boolean has_flash = this.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
if(has_flash){
setContentView(R.layout.activity_main);
SurfaceView preview = (SurfaceView)findViewById(R.id.pSv);
SurfaceHolder holder = preview.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
disableSleepMode();
initFlashLight();
ToggleTorch();
screenTorchOn();
} else {
setContentView(R.layout.activity_main);
disableSleepMode();
screenTorchOn();
}
}
任何幫助,將不勝感激。謝謝。
什麼是downvote?有趣嗎? – Amyth 2012-07-25 14:30:17
因爲ppl認爲別人應該瞭解Android設計不佳的API。 – zezba9000 2013-01-24 17:46:32