实现类似iOS拍照的按钮滑动功能
来源:互联网 发布:有哪些视频剪辑软件 编辑:程序博客网 时间:2024/06/06 01:27
今天有时间特意来自己写一篇关于自定义view的内容,先上效果图:
我菜鸟一个,有不足的地方请多多指教!
由于工作,我也是边工作边学习自定义,刚接触自定义,多亏了辉哥的指教,在此谢谢!
下面进入正题:
我们要实现的是,实现类似iOS拍照的按钮滑动功能,这里就以最近项目中用到的开始、暂停、停止为准,度娘了一下,发现没有,于是决定自己搞吧!
需求分析:
1:进入项目就只有暂停按钮居中,(所有按钮纵坐标不变)
2:点击暂停按钮,暂停按钮消失,开始和停止按钮向两边滑动至屏幕的(1/6-按钮宽度的一半)和(5/6-按钮宽度的一半)
3:点击开始按钮,开始按钮和停止按钮向中间滑动,当重合时显示,暂停按钮显示
一:继承RelativeLayout,复写其中三个方法,在第三个方法中获取屏幕宽度,并分成三等分,分别获取到这三等分的各自中点
1.获取屏幕宽度方法:
2.复写其中三个方法,并分成三等分,分别获取到这三等分的各自中点
二、待布局加载完成获取子view,先获取子view的数量就是三个:开始、暂停、停止
三、接下来就是在初始摆放控件的方法里面进行进行监听、位置摆放等操作
1.设置暂停按钮的初始位置(中点不行),并设置开始按钮和停止按钮的监听,默认三个按钮需要到达的位置为:
开始:屏幕宽度的六分之一减去按钮宽度的一半
暂停:屏幕宽度的一半减去按钮宽度的一半
停止:屏幕宽度的六分之五减去按钮宽度的一半
2。因为默认是在进行中所以进入项目就只有暂停按钮,点击暂停按钮就涉及三个按钮的动画:暂停按钮消失、开始按钮向左滑动、停止按钮向右滑动
点击暂停:创建动画集合,分别创建开始和停止的属性动画,最后将开始和停止一起加入动画集合,然后start
3.点击开始按钮就涉及三个按钮的动画:开始按钮向右滑动、停止按钮向左滑动,当开始按钮坐标到达暂停按钮时,暂停按钮显示、开始和停止按钮消失
点击开始:创建动画集合,分别创建开始和停止的属性动画,最后将开始和停止一起加入动画集合,然后start
四、接下来在xml文件中加入刚写好的布局,在布局中随便加入三个按钮:开始,暂停,停止
然后运行,OK!
Git:demo地址
- 实现类似iOS拍照的按钮滑动功能
- 实现类似IOS中滑动按钮效果
- Android实现类似ios滑动按钮
- IOS 实现边滑动边缩放的类似qq主界面的页面切换功能
- IOS 实现边滑动边缩放的类似qq主界面的页面切换功能
- IOS 实现边滑动边缩放的类似qq主界面的页面切换功能
- iOS 实现拍照功能
- SlidingPaneLayout实现类似新版QQ主页滑动缩放的功能。
- 拍照功能的实现
- ios 中按钮组(类似ButtonGroup)的实现
- 如何调用系统照相机实现类似腾讯微博那个拍照上传的功能
- WINCE 拍照功能的实现
- Android--拍照功能的实现
- iOS 用html创建带下划线的链接(类似下划线按钮的功能)
- Android 滑动按钮,滑动锁的实现
- 简单滑动按钮的实现
- ios tableViewCell滑动实现多按钮
- 类似ios滑动开关
- Maven中的settings.xml设置远程镜像库
- 小白成长之路(7)--C++多层派生类继承实例(期中考试)
- 移动端的返回顶部悬浮按钮还需要存在吗?
- 反射:reflection
- Redis主从复制和集群配置
- 实现类似iOS拍照的按钮滑动功能
- 简单的模拟京东商城购买过程-pymysql
- slf4j+log4j+logback总结
- python中format用法
- 深入dubbo(四)配置参考
- 数据结构(Data Structure)(第三集)(链表(Linked List))
- POJ 3274.Gold Balanced Lineup
- 无缝轮播图的实现对比---CSS3版, JS版
- Python 3.6 正则表达式二 包含筛选IP正则表达式