天天看点

Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能

<a href="http://blog.csdn.net/qq_26787115/article/details/50583482">android camera开发系列(上)——camera的基本调用与实现拍照功能以及获取拍照图片加载大图片</a>

上篇讲的都是一些基本的使用,这篇就来自己定义一个相机了
我们还是在原来的demo上修改,新增一个button,点击跳转到cameraactivity,我们在cameraactivity内实现我们的自定义相机,这里值得注意的是,我们拍照时要一直捕捉拍照的过程,普通的view肯定不行,google给我们提供了一个view叫做
Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能
这里有个前提,记得添加权限
我们新增一个方法来获取系统的相机实例
这里值得注意的是,camera是废弃的对象,那是因为google新给出来一个新的api
Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能
但是其实新出的api只是作为高级使用的时候才会用,一般来讲,我们还是用回以前的api
要使用surfaceview还是要
写到这里,基本上我们的可以预览了,我们来运行一下
Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能
这里因为是模拟器,他只有前置摄像头,本应该旋转270°的,我们只要知道通过以上的方法可以同步预览影像就可以了
我们设置拍照这个button的点击事件
这里的pc是一个回调方法,我们重写
我们拍完照片然后就跳转到photoactivity查看图片
我们运行一下 拍完之后跳转到photoactivity界面
Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能Android Camera开发系列(下)——自定义Camera实现拍照查看图片等功能
但是相机是一个大坑,各种不兼容,而且还有前后置摄像头之分哟,上面代码病没有提及前置,前置需要翻转270°,并且我们之前就应该判断是否是前置,再进行旋转,这个只是初学的示例代码,有兴趣的可以下载demo玩玩

继续阅读