一、前言
在前面的博客中Camera 拍照中我们其实已经介绍过如何通过SurfaceView实现Camera的预览;今天闲着没事就写写怎样通过TextureView实现Camera预览,并介绍下TextureView与SurfaceView的区别。
二、知识结构
1、相似点
我们可能经常使用SurfaceView来实现Camera预览;
1:通过SurfaceViewHolder为SurfaceView设置一个当SurfaceView被创建成功后的回调借口;
2:在自定义的回调接口sufaceCreate()中实现Camera的Parameters设置及开启Camera的预览;在surfaceDestroy()中关闭Camera、释放资源等;
TextureView实现Camera预览的步骤与SurfaceView大体相同;只不过是回调方法不一样了而已;在TextureView中变成了:
textureView.setSurfaceTextureListener(new SurfaceTextureListener());
2、区别:
1、SurfaceView的工作方式是创建一个应用窗口之上的新窗口。这种方式的效率非常高,因为SurfaceView窗口刷新的时候不需要重绘应用程序的窗口;其实SurfaceView就像一个玻璃窗口,通过它我们能看到Surface上的数据;而我