我正在开发一个Android自定义相机应用程序,而不使用内置的意图。我正在使用以下代码进行曲面更改
public void surfaceChanged(SurfaceHolder sHolder, int format, int width, int height)
{
if (isPreview)
{
try
{
camera.stopPreview();
isPreview = false;
}
catch (Exception e)
{
Log.e(TAG, "surfaceChanged", e);
}
}
try
{
Camera.Parameters p = camera.getParameters();
p.setPreviewSize(surface.getWidth(), surface.getHeight());
camera.setParameters(p);
}
catch (Exception e)
{
Log.e(TAG, "surfaceChanged", e);
}
try
{
camera.setPreviewDisplay(holder);
}
catch (IOException e)
{
e.printStackTrace();
}
camera.startPreview();
isPreview = true;
}
但在我的自定义相机应用程序中使用上述代码后,与内置相机应用程序相比,图像分辨率非常低,但我没有在我的代码中明确设置任何分辨率。没有得到我错的地方!请帮忙!谢谢!
答案 0 :(得分:2)
在getSupportedPictureSizes()
上使用Camera.Parameters
查找所需的尺寸,或使用该信息填充ListView或Spinner
检查this ...它肯定会帮助你