2012-05-05 83 views
0

我有一个Droid X,它具有一个物理照相机按钮。我使用这里使用的示例:http://marakana.com/forums/android/examples/39.html如何处理Android设备上的物理照相机按钮

应用程序排序的作品。屏幕上的按钮捕获并显示预览图像。但如果我推动物理相机按钮,应用程序崩溃。

我应该如何处理这个问题,更重要的是,这是否会导致存在/没有物理按钮的不同设备出现问题?

+0

“但如果我推物理拍照键,应用程序崩溃。” - 在Eclipse中使用'adb logcat',DDMS或DDMS透视图来检查LogCat并查看与崩溃相关的堆栈跟踪。 – CommonsWare

回答

5

你需要重写onKeyDownActivity

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 

    if(event.getAction() == KeyEvent.ACTION_DOWN) 
    { 
     switch(keyCode) 
     { 
     case KeyEvent.KEYCODE_CAMERA: 
      // handle the event here 
     } 
    } 

    return super.onKeyDown(keyCode, event); 
} 
+0

谢谢。我假设,如果手机没有物理按钮,这将无能为力? – Chris

+0

是的,只要按下按钮就会调用它。但是,'KeyEvent.KEYCODE_CAMERA'将不会被执行,并且代码将被返回到超类'Activity' –