I'm using the LogCat to display my values, but its not working through my if statements?
Parameters p = mCamera.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_OFF);
mCamera.setParameters(p);
mCamera.startPreview();
Log.d("Torch","MODE AUTO: " + p.getFlashMode() + "," + Parameters.FLASH_MODE_AUTO);
//Flash Button
final Button flashButton = (Button) findViewById(id.camera_flash);
flashButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Parameters p = mCamera.getParameters();
Log.d("Torch","MODE : " + p.getFlashMode() + "," + android.hardware.Camera.Parameters.FLASH_MODE_OFF);
// TODO Auto-generated method stub
if(p.getFlashMode() == Parameters.FLASH_MODE_ON){
p.setFlashMode(Parameters.FLASH_MODE_OFF);
mCamera.setParameters(p);
mCamera.startPreview();
flashButton.setText("Off");
Log.e("Torch","MODE OFF");
}else if(p.getFlashMode() == Parameters.FLASH_MODE_OFF){
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
mCamera.setParameters(p);
mCamera.startPreview();
flashButton.setText("TORCH");
Log.e("Torch","MODE TORCH");
}else if(p.getFlashMode() == android.hardware.Camera.Parameters.FLASH_MODE_AUTO){
p.setFlashMode(Parameters.FLASH_MODE_ON);
mCamera.setParameters(p);
mCamera.startPreview();
flashButton.setText("ON");
Log.d("Torch","MODE ON: " + p.getFlashMode() + "," + android.hardware.Camera.Parameters.FLASH_MODE_AUTO);
}else if(p.getFlashMode() == android.hardware.Camera.Parameters.FLASH_MODE_TORCH){
p.setFlashMode(Parameters.FLASH_MODE_ON);
mCamera.setParameters(p);
mCamera.startPreview();
flashButton.setText("AUTO");
Log.e("Torch","MODE AUTO");
}/*else
p.setFlashMode(Parameters.FLASH_MODE_AUTO);
mCamera.setParameters(p);
mCamera.startPreview();
flashButton.setText("AUTO");
Log.d("Torch","MODE AUTO: " + p.getFlashMode() + "," + android.hardware.Camera.Parameters.FLASH_MODE_AUTO);
} */
}
I'm getting MODE AUTO: off,auto
(within my onCreate) and MODE: off,off
(within the onClick). These are my tests, so in theory, if my onCreate is off,auto
then it should pass through if(p.getFlashMode() == Parameters.FLASH_MODE_OFF)
, but its not?
Any reason why its not going through my if statements?
Thanks in advance