我正在制作一款使用手机相机的Android 1.6应用程序。
为了独立完成此应用分辨率,我需要设置兼容的宽高比,以便在SurfaceLayout上预览相机。在1.6 sdk中,无法获得支持的相机预览尺寸。可以使用4:3或3:2的宽高比,并且不会出现任何错误吗?
另一方面,我需要一种方法来制作一个xml布局,在每个分辨率中以此(未知)宽高比表示此Surfacelayout。我假设无法在运行时更改SurfaceLayout大小。我可以用“dp”单位吗?另一种方法是以编程方式进行此布局?
有一些应用程序,如Vignette或Android相机应用程序,有一些技巧可以制作类似的东西,如黑条(晕影)或固定按钮栏,但我不知道如何以任何类型的分辨率。< / p>
有什么想法吗?
谢谢!
答案 0 :(得分:6)
在1.6 sdk中,无法获得支持相机预览的尺寸。
有。您可以在解析preview-size-values
摄像机参数时获取它们。
String supportedSizesString = parameters.get("preview-size-values");
List<Size> supportedSizes = new ArrayList<Size>();
if (supportedSizesString != null && supportedSizesString.length() > 0) {
StringSplitter ss = new TextUtils.SimpleStringSplitter(',');
ss.setString(supportedSizesString);
for (String supportedSize : ss) {
String[] dimentions = supportedSize.split("x");
if (dimentions.length > 1) {
Size size = mCamera.new Size(Integer.parseInt(dimentions[0]),
Integer.parseInt(dimentions[1]));
supportedSizes.add(size);
}
}
}