我正在开发一个应用程序,因为我正在使用 Surfaceview 和 Camera api 拍照。我的问题是使用 Galaxy S3 拍摄的图像的分辨率仅显示 640x480。但在其他设备中,它显示的是相机的分辨率。因此,当我显示图像时,它变得模糊,仅在 S3 中,在其他设备中显示完美。
我不知道这背后的问题是什么。其他设备在 2.3 上运行,而 s3 在 4.0 上运行。请帮我。
最佳答案
不同的设备有不同的可用分辨率。
在扩展 Surfaceview 的类中设置相机时,您可以找到支持的图片尺寸:
public void setCamera(Camera camera) {
this.mCamera = camera;
if (mCamera != null) {
List<Camera.Size> mSupportedPictureSizes = Camera.getParameters().getSupportedPictureSizes();
//Iterate over list and find the size you want.
Camera.Parameters parameters = mCamera.getParameters();
parameters.setPictureSize(chosenPictureSize.width, chosenPictureSize.height);
mCamera.setParameters(parameters);
}
}
关于android - 在 android 4.0 驱动的设备(如 Galaxy s3)上使用 surfaceview 使用自定义相机拍摄的图像显示分辨率较低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13195492/