Android仿微信拍照控件
来源:互联网 发布:黎明杀机优化 编辑:程序博客网 时间:2024/06/02 04:34
昨日,阿里巴巴文化娱乐集团宣布土豆网全面转型为短视频平台,准备投入20亿打造“大鱼计划”,原UC订阅号、优酷自频道账号统一升级为大鱼号。同时,淘宝将推出Channel T,为土豆平台内容的创作者提供了覆盖 淘宝二楼、淘宝台、短视频全淘 融入的三层合作模式。此外,土豆还公布了海外计划,5月将推出面向亚洲市场的短视频App“tudoo”。
本篇来自 陈嘉桐 的投稿,分享了自己实现的一个拍照与录短视频的控件,希望能够帮助到大家。另外,预祝大家都可以享受一个好的假期,休息和放松一下,我们下周三再见面!
陈嘉桐 的博客地址:
https://github.com/CJT2325
不知道是不是在微信更新到6.0版本之后,微信将它的拍照和录制视频的功能集合到同一个界面,通过点击与长按来分别执行拍照和录制小视频的功能,真的不得不感叹那些大牛的想法是多么天马行空。虽然我没有他们的想法那么超前,但是我还是尽了自己的能力去模仿他们的微信拍照界面,并且将它们组件化,让需要用到的人轻松使用。
首先先介绍一下该控件的功能,这是一个模仿微信拍照的开源控件,主要的功能有如下:
点击拍照。
前后摄像头的切换。
长按录视频(视频长度为10秒内)。
长按录视频的时候,手指上滑可以放大视频。
录制完视频可以浏览并且重复播放。
可以设置小视频保存路径。
自定义View肯定不用多说啦 (拍照与录制视频的按钮) :
1. CaptureButton (继承View)
2. JCameraView (继承RelativeLayout)
Camera (拍照)
MediaRecorder (录制小视频)
VideoView (小视频的浏览)
刚开始,在 CaptureButton 的自定义View中要实现点击与长按的功能,突然想到不能直接继承 OnLongClickListener 来实现长按,最后通过调用一个线程的方法来解决。
录制完小视频后的重复播放,刚开始我是用 SurfaceView 去浏览 Camera,但是后续发现 VedioView 是继承自 SurfaceView 同时还有播放视频的功能,所以就想可不可以用 VedioView 来代替 SrufaceView。
首先通过 MediaRecorder 录制视频:
录制成功之后使用 VedioView 来重复播放视频:
代码我相信也看得不耐烦了,最后还是通过GIF图来看看效果:
GIF有点卡顿
添加下列代码到Project gradle
添加下列代码到Module gradle
compile 'cjt.library.wheel:camera:0.0.7'
布局文件中添加
AndroidManifest.xml中添加权限
Activity设置为全屏
初始化JCameraView控件
JCameraView生命周期
该项目可能存在着许多的BUG,并且代码逻辑可能不太严谨,但是从中是我从中还是获得了许多快乐,BUG的解决,完整的运行让我刚到相当有成就感,同时我将它开源出来供大家一起学习,所谓独乐乐不如众乐乐,也可以让快步入社会的我到时候面试的多一份底气。(最后想请教一下前置摄像头录视频的时候如何将视频水平翻转)
项目地址:
https://github.com/CJT2325/CameraView
每天学习累了,看些搞笑的段子放松一下吧。关注最具娱乐精神的公众号,每天都有好心情。
如果你有好的技术文章想和大家分享,欢迎向我的公众号投稿,投稿具体细节请在公众号主页点击“投稿”菜单查看。
欢迎长按下图 -> 识别图中二维码或者扫一扫关注我的公众号:
- Android仿微信拍照控件
- Android 微信拍照控件
- Android高仿微信拍照控件,实战推荐!
- Android仿微信选择照片,拍照
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片 .
- Android 调用相册 拍照 实现系统控件缩放 切割图片 .
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- Android 调用相册 拍照 实现系统控件缩放 切割图片
- [Android] 拍照、截图、保存并显示在ImageView控件中
- Android编译打包烧录
- RoundMenuView一一自定义扇形菜单控件
- Android教你打造独一无二的刷新加载框架
- Android消息机制源码分析
- 数据加密算法详解
- Android仿微信拍照控件
- RecyclerView实现复杂页面
- Android插件化原理讲解与实战
- 微信公众号支付之openID的获取
- Android7.0适配
- Android通过蓝牙获取通讯录
- Netty数据传输-客户端,queue-client
- Android使用记录访问权限
- Android进程间通信