【发布时间】:2011-04-19 10:58:24
【问题描述】:
嗨,我想在 android 中实现 Torch 应用程序,所以这是我的代码
setContentView(R.layout.main);
camera = Camera.open();
if(camera == null)
Toast.makeText(getBaseContext(),"CAMERA FAILED", Toast.LENGTH_LONG).show();
else
Toast.makeText(getBaseContext(),"camera opened",Toast.LENGTH_LONG).show();
}
public boolean dispatchKeyEvent(KeyEvent event) {
int action = event.getAction();
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
if (action == KeyEvent.ACTION_UP) {
if(camera!=null)
{
Toast.makeText(getBaseContext(),"came to volume up",Toast.LENGTH_LONG).show();
Parameters params = camera.getParameters();
params.setFlashMode( Parameters.FLASH_MODE_ON );
camera.setParameters(params);
}
}
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (action == KeyEvent.ACTION_UP) {
Parameters params = camera.getParameters();
params.setFlashMode( Parameters.FLASH_MODE_OFF );
camera.setParameters(params);
camera.release();
camera = null;
Toast.makeText(getBaseContext(),"came to volume down",Toast.LENGTH_LONG).show();
}
return true;
default:
return super.dispatchKeyEvent(event);
}
}
}
为什么这段代码不起作用???
【问题讨论】:
-
您是否收到任何错误消息?
-
究竟是什么不起作用。它会抛出错误吗?它是否进入 Key Event 监听器?你有很多不动产,找出真正出错的地方会很有帮助。
-
不,我没有收到任何错误消息...它也会发生事件,但问题是我无法使用我的代码打开和关闭闪光灯
-
即使我按下音量增大按钮,闪光灯也没有打开...请告诉我哪里做错了
-
你必须这样做:stackoverflow.com/questions/8876843/…希望它有效