标签:优先 top base text splay ref 设置 style bin
1.预览照片被拉伸
思路如下:
1. 先将获取手机支持预览的尺寸列表通过方法parmeters.getSupportedPreviewSizes()来得到返回类型为List<Size>的值,
2. 先进行屏幕方向的一个判断,因为预览列表里面的尺寸都是w>h(即横屏),如果屏幕是竖屏则需要先将宽高进行调换,这样方便接下来的比较。
3. 先用for循环将预览尺寸列表每个元素宽高与surfaceview的宽高进行比较,如果存在宽高尺寸都与surfaceview宽高尺寸相同的size则将该宽高设置为预览尺寸。4. 如果步骤2找不到相同尺寸就得进行该步骤,将尺寸列表的宽高比例和surfaceview的比例作比较,找到一个相同或相近的。(一般来说,只要surfaceview的尺寸和屏幕尺寸相同,就可以找到相同的比例)然后将该尺寸的size设置为预览尺寸。
/** * 初始化SurfaceView宽高比
* mWidth 视频录制宽度 mHeight 视频录制高度 ,让SurfaceView的宽高比跟录制视频的宽高比一直,防止视频被拉伸 */ private void initSurfaceView() { final int w = DeviceUtils.getDisplayWidth(); int width = w; int height = (int) (w * ((mWidth*1.0f)/mHeight)); // LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) mSurfaceView .getLayoutParams(); lp.width = width; lp.height = height; mSurfaceView.setLayoutParams(lp); }
1.Activity实现implements Android.media.MediaRecorder.OnErrorListener这个接口
2.开始录制视频时
http://blog.csdn.net/u010696783/article/details/51087191
标签:优先 top base text splay ref 设置 style bin
原文地址:http://www.cnblogs.com/ldq2016/p/6290931.html