1

好的,所以我环顾四周,但我似乎找不到其他有这个问题的人。

我正在制作一个简单的应用程序,只是为了测试使用相机。一切正常,直到我真正按下按钮来捕捉图像。当我这样做时,不是冻结并要求确认这是我想要的照片,而是确认按钮出现在底部,但来自相机的实时馈送仍在继续。

我正在使用最基本的发送意图的方式来要求 android 拍照,所以我不知道为什么会这样。

这是代码:

private static final int IMAGE_CAPTURE = 1;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    addCaptureButtonListener();
}

private void addCaptureButtonListener() {
    Button capture = (Button) findViewById(R.id.captureButton);

    capture.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            startActivityForResult(i, IMAGE_CAPTURE);
        }
    });
}



@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(resultCode == RESULT_OK) {
        if(requestCode == IMAGE_CAPTURE) {
            Toast.makeText(this, "Image Successfully Taken", Toast.LENGTH_SHORT).show();
        }
    }
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}
4

1 回答 1

0

相机功能很大程度上取决于您使用的设备,您可能使用了正确的方法,但有时是硬件问题。另外请发布代码,从这个例子中交叉检查一切是否正常。

从相机捕获图像并在活动中显示

如果它工作正常,请尝试在其他设备上对其进行测试,然后查找该设备的错误文档。

编辑

问题在于 S4 它在捕获图像分辨率和预览图像分辨率之间存在冲突,此处也报告了类似的问题

三星 Galaxy S4,从相机拍摄时图像损坏

三星 Galaxy S4 图像捕获问题

您的代码是完美的,只是分辨率相机单击图像不受同一设备的预览支持。

于 2013-06-21T18:18:52.880 回答