我想创建一个应用程序来控制相机闪光灯,所以当我点击一个按钮时,闪光灯应该打开,如果没有,或者如果它打开则关闭,但应用程序没有工作,我不喜欢#39;知道错误在哪里,这是我的代码:
public class MainActivity extends Activity {
Button b;
Camera camera;
Camera.Parameters ps;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
b = (Button) this.findViewById(R.id.b);
if(getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)){
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
ps = camera.getParameters();
if(ps.getFlashMode().equals(android.hardware.Camera.Parameters.FLASH_MODE_OFF)){
camera = Camera.open();
Parameters p = camera.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
camera.startPreview();
b.setText("Turn off");
}
else if(ps.getFlashMode().equals(android.hardware.Camera.Parameters.FLASH_MODE_ON)){
camera = Camera.open();
Parameters p = camera.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(p);
camera.stopPreview();
b.setText("Turn on");
}
else if(ps.getFlashMode().equals(null)){
camera = Camera.open();
Parameters p = camera.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
camera.startPreview();
b.setText("Turn off");
}
}
});
}
else
return;
}
}
答案 0 :(得分:0)