Camera预览功能实现基于Camera API和SurfaceView的应用
拍照预览的老派玩法,用的就是 Android 里的 **Camera** 搭配 **SurfaceView**。思路直白:SurfaceView 负责开个专门的画布,Camera 把实时画面往上怼,你就能在界面上看到预览了。布局里先放个 SurfaceView,在 Activity 里用 getHolder()
拿到它的 holder,加上回调,等 SurfaceView 准备好就开机(Camera.open),指定预览方向, startPreview 就行。
拍照按钮也好加,监听 onClick
事件,直接 camera.takePicture()
,拍完图会进回调,你可以保存本地或者上传。唯一要注意的就是 Camera 资源要记得在 surfaceDestroyed
里 release,不然下次打不开。
虽然 Android 5.0 之后有了 **Camera2 API**,功能更强,画质也好,但要照顾老机型,这套 Camera+SurfaceView 的组合还挺好用的,简单、稳定、代码量不多。如果你要做个轻量的拍照功能,这就是个不错的起步方案。
826.83KB
文件大小:
评论区