【发布时间】:2014-02-12 10:47:34
【问题描述】:
我正在做一个应用程序,它需要设备(通常是平板电脑)处于横向,但图片必须在屏幕上以纵向显示。
到这里为止,我已经做到了。但是现在,当我拍照时,“预览”图像以横向显示,看起来很奇怪。
查看图片以了解我的意思:
您在拍照前的看法:
那是在拍照之后:
我不知道如何解决它
这就是surfaceView:
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
// stop Preview Before making changes
try {
mCamera.stopPreview();
} catch (Exception e) {
// ignored: is trying to stop a non-existent preview
}
try {
mCamera.setPreviewDisplay(mHolder);
mCamera.startPreview();
} catch (Exception e) {
Log.d("CAMERAPREVIEW", "Error starting camera preview : " + e.getMessage());
}
}
并且方法被覆盖
private PictureCallback mPicture = new PictureCallback() {
@Override
public void onPictureTaken(byte[] data, Camera camera) {
File pictureFile = getOutputMediaFile(MEDIA_TYPE_IMAGE);
if (pictureFile == null) {
Log.d(TAG, "Error creating media file, check storage permissions: ");
return;
}
try {
FileOutputStream fos = new FileOutputStream(pictureFile);
fos.write(data);
fos.close();
// Not used for the moment
// Intent returnIntent = new Intent();
// setResult(RESULT_CANCELED, returnIntent);
// finish();
} catch (FileNotFoundException e) {
Log.d(TAG, "File not found: " + e.getMessage());
} catch (IOException e) {
Log.d(TAG, "Error accessing file: " + e.getMessage());
}
}
};
【问题讨论】:
标签: android layout android-camera preview