自定义相机的SurfaceView 中由于surfaceChanged()方法多次调用,导致在此方法中设置相机预览图闪烁

通过SurfaceView来显示相机的预览图,在surfaceChanged()中来设置预览图的纵横比。但是当SurfaceView所在的FrameLayout发生变化时(我加入了一个PreferenceFragment),SurfaceView会发生重绘,surfaceChanged()多次调用导致多次修改预览图大小和位置,从而发生预览图闪烁问题,试问如何在不去掉加入的PreferenceFragment的情况下,来解决预览图闪烁的问题?
在surfaceChanged中通过adjustDisplayRatio()方法,根据纵横比来更改预览图大小位置

adjustDisplayRatio()方法 通过layout()来改变预览图大小位置

回答:

楼主这个背景怎么搞的 好犀利的样子

以上是 自定义相机的SurfaceView 中由于surfaceChanged()方法多次调用,导致在此方法中设置相机预览图闪烁 的全部内容, 来源链接: utcz.com/p/172279.html

回到顶部