android自定义相机黑屏问题
来源:互联网 发布:社区网站源码 编辑:程序博客网 时间:2024/06/03 15:57
对于一些手机,像HTC,当自定义Camera时,调用Camera.Parameters的parameters.setPreviewSize(width,height)方法时,如果width和height为奇数情况下,则会出现黑屏现象,解决办法可参考SDK提供的ApiDemos中关于Camera的例子:
List<Size> sizes =parameters.getSupportedPreviewSizes();
Size optimalSize = getOptimalPreviewSize(sizes, w,h);
parameters.setPreviewSize(optimalSize.width, optimalSize.height);
同时,在HTC手机中,设置parameters.setPictureSize(width,height)属性,也会导致黑屏,而在三星手机上则没有问题。还有如果设置setPreviewSize属性的宽高错误的话,拍出的照片也会存在失真等Bug,所以遇到适配问题时,最好的办法就是不设置PreviewSize和PictureSize属性。
getOptimalPreviewSize方法
private Size getOptimalPreviewSize(List<Size> sizes, int w, int h) { final double ASPECT_TOLERANCE = 0.05; double targetRatio = (double) w / h; if (sizes == null) return null; Size optimalSize = null; double minDiff = Double.MAX_VALUE; int targetHeight = h; // Try to find an size match aspect ratio and size for (Size size : sizes) { double ratio = (double) size.width / size.height; if (Math.abs(ratio - targetRatio) > ASPECT_TOLERANCE) continue; if (Math.abs(size.height - targetHeight) < minDiff) { optimalSize = size; minDiff = Math.abs(size.height - targetHeight); } } // Cannot find the one match the aspect ratio, ignore the requirement if (optimalSize == null) { minDiff = Double.MAX_VALUE; for (Size size : sizes) { if (Math.abs(size.height - targetHeight) < minDiff) { optimalSize = size; minDiff = Math.abs(size.height - targetHeight); } } } return optimalSize; }
- android自定义相机黑屏问题
- Android 自定义相机黑屏
- Android自定义相机拍摄黑屏
- 关于android自定义的相机问题
- 解决自定义cpp类编译到Android运行黑屏问题
- 【Android】自定义theme解决进入app闪黑屏问题
- android SurfaceView黑屏问题
- Android SurfaceView 黑屏问题
- Unity android 黑屏问题
- Android 自定义相机
- android自定义相机
- Android自定义相机
- android 自定义相机
- android 自定义相机
- android 自定义相机
- android自定义相机
- android自定义相机功能
- Android-自定义相机
- ORACLE收缩表空间
- android更新adt后出现java.lang.NoClassDefFoundError:
- Eclipse 部署Thrift 实例 & 服务模型实例演示(java)
- Go学习笔记之高级数据类型
- Android自定义照相机 预览拍照 切换前后置摄像头
- android自定义相机黑屏问题
- android--彻底关闭--应用程序
- Cocos2d-x里面如何实现MVC(一)
- DOK系统重写
- Web开发者不容错过的20段CSS代码
- string.Format 格式化时间,货币
- 智能视频分析常用的数据库
- ORACLE释放UNDO表空间
- Android SoftAp支持 (一)