登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

LDPressButton 使用swift写的仿微信视频录制按钮,含进度条

[复制链接]
来自: lqq200912408 分类: iOS精品源码 上传时间: 2017-2-24 11:16:43

项目介绍:

LDPressButton

说明

本demo是使用swift3.0仿写的微信小视频拍摄按钮, 只是一个简单长按按时计时, 附带环形进度条的小控件

介绍

属性介绍: 对外公开的属性十分简单, 主要是一些简单的设置, 都设有默认值

/// 计时时长
var interval: Float = 10.0
/// 按钮样式
var style: LDProgressButtonStyle = .White
/// 中间圆心颜色
var centerColor: UIColor!
/// 圆环颜色
var ringColor: UIColor!
/// 进度条颜色
var progressColor

对外公开的方法只有一个, 用于接收回调的事件:

/// 响应事件
func actionWithClosure(_ closure: @escaping actionState) 

另外设置了两个枚举

/// 按钮的样式
enum LDProgressButtonStyle {
    
    case White
    case Gray
    case Black
}
/// 按钮的状态, 即事件
enum LDProgressButtonState {
    case Begin //开始点击
    case Moving // 手指移动
    case WillCancel // 当移动超出环形范围, 处于即将取消
    case DidCancel  // 松开手指, 取消
    case End // 正常结束
    case Click // 单击事件
}

使用

控件继承自UIView, 可以添加到任意视图上, 使用非常简单, 这里直接给出示例代码
这里直接使用的默认属性设置, 可根据自己的需求来设置

// 初始化控件
let press = LDPressButton.init(frame: CGRect.init(x: 100, y: 100, width: 100, height: 100))
// 添加控件
        
self.view.addSubview(press)
// 控件事件响应, 使用闭包回调, 参数是各种状态
press.actionWithClosure { (state) in
            
            switch state {
                
            case .Begin:
                print("begin")
            case .Moving:
                print("moving")
            case .WillCancel:
                print("willCancel")
            case .DidCancel:
                print("didCancel")
            case .End:
                print("end")
            case .Click:
                print("click")
            }
        }

注意

在测试时, 请使用真机, 模拟器会导致计时不准确, 因为使用的是CADisplayLink来计时的, 其频率是同iPhone设备同步的
             

示意图


git地址:https://github.com/LQQZYY/LDPressButton
code4app

相关源码推荐:

我来说两句
*滑动验证:
所有评论(1)
没有梦想 2017-3-5 12:31:37
+++++++++++++++++++++++++
回复
code4app热心网友 2017-3-15 17:46:12
强烈支持楼主ing……
回复
code4app热心网友 2017-3-31 16:02:43
精华内容,楼主V5!
回复
dthalo 2017-3-31 16:13:11
楼主用心了,内容非常精彩。
回复
code4app热心网友 2017-4-14 15:34:09
虽不明,但觉厉!
回复
code4app热心网友 2017-4-17 10:16:29
我只是路过打酱油的。
回复
code4app热心网友 2017-4-24 09:33:09
虽不明,但觉厉!
回复
code4app热心网友 2017-4-24 16:10:44
楼主用心了,内容非常精彩。
回复
code4app热心网友 2017-4-26 11:44:24
学习学习!
回复
提取码:  下载次数:55 状态:已购或VIP 售价:0(原价:10)金钱 下载权限:初级码农 
2020 1 55
联系我们
首页/微信公众账号投稿

帖子代码编辑/版权问题

QQ:435399051,742864542

如何获得代码达人称号?

代码贡献英雄榜
用户名 下载数
通过邮件订阅最新 Code4App 信息
上一条 /4 下一条
联系我们
关闭
合作电话:
13802416937
Email:
435399051@qq.com
商务市场合作/投稿
问题反馈及帮助
联系我们

广告投放| 广东互联网违法和不良信息举报中心|中国互联网举报中心|Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表