相机预览示例

时间:2012-03-16 15:35:03

标签: java android

我知道这是非常基本的但是我找不到解决方案的错误。

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.html

我有两个错误,我不知道我做错了什么。

public boolean onCreateOptionsMenu(Menu menu) {

    // Inflate our menu which can gather user input for switching camera
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.camera_menu, menu);
    return true;
}

我在“R.menue ...”的“菜单”中收到错误

错误2:

public boolean onOptionsItemSelected(MenuItem item) {
        // Handle item selection
        switch (item.getItemId()) {
        case R.id.switch_cam:
            // check for availability of multiple cameras
            if (numberOfCameras == 1) {
                AlertDialog.Builder builder = new AlertDialog.Builder(this);
                /**builder.setMessage(this.getString(R.string.camera_alert))
                       .setNeutralButton("Close", null);*/
                AlertDialog alert = builder.create();
                alert.show();
                return true;
}

我在“case R.id ...”中收到“id”错误

由于

2 个答案:

答案 0 :(得分:0)

首先,你的<uses-permission android:name="android.permission.CAMERA" />中有AndroidManifest.xml吗?

您可以尝试在此处查看适用于Android的完整相机预览:Camera Preview Android

另一个包含源文件的好网站:Using Camera API with SourceFile

答案 1 :(得分:0)

您很可能只是将上面链接的源文件复制到项目中。您还必须添加res/menu/camera_menu.xml。这定义了按菜单按钮时出现的选项菜单。如果您有兴趣,请参阅menu doc了解更多信息。

如果你不这样做,工具会注意到你错过了一个你在代码中引用但实际上并不存在的文件,这会导致第一个错误。第二个错误也是间接导致的。缺少的ID也会在菜单文件中创建。