前言
前段時間的面試總結(jié)了不少叼架,大部分公司都要求有視頻編輯和對CAShapeLayer的開發(fā)經(jīng)驗畔裕,由于之前很少做這塊,所以現(xiàn)在得去學(xué)學(xué)乖订,一步一步慢慢來扮饶,我剛寫好了錄制按鈕的效果,后續(xù)的寫完再更新乍构。
集成
第一種:直接把工程的ZDRecord文件夾拖進(jìn)項目中
第二種:通過pod集成:pod 'ZDRecordButton', '~> 0.0.2'
使用
直接初始化甜无,通過代理方法回調(diào)操作狀態(tài),可以進(jìn)行相應(yīng)的操作
#import "ZDRecordButton.h"
@interface ViewController ()<ZDOperationActionDelegate>
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
ZDRecordButton *rManager = [[ZDRecordButton alloc] initWithFrame:CGRectMake(([UIScreen mainScreen].bounds.size.width - 80) / 2, [UIScreen mainScreen].bounds.size.height - 120, 80, 80)];
rManager.delegate = self;
//進(jìn)度條顏色
rManager.progressColor = [UIColor blueColor];
[self.view addSubview:rManager];
}
#pragma ZDOperationActionDelegate
- (void)didOperationStateChange:(ZDOperationActionState)state {
switch (state) {
case ZDOperationStateClick: {
NSLog(@"點(diǎn)擊");
}
break;
case ZDOperationStateBegan: {
NSLog(@"開始");
}
break;
case ZDOperationStateLongPress: {
NSLog(@"長按");
}
break;
case ZDOperationStateMoving: {
NSLog(@"移動中");
}
break;
case ZDOperationStateWillCancel: {
NSLog(@"松手就取消");
}
break;
// 完成
case ZDOperationStateDone: {
NSLog(@"完成");
}
break;
case ZDOperationStateCancel: {
NSLog(@"取消");
}
break;
default:
break;
}
}
自定義顏色
外圓、內(nèi)圓岂丘、進(jìn)度條顏色陵究、錄制時長都可以自定義修改
通過以下開放的屬性進(jìn)行自定義即可
/*
*
* 進(jìn)度條顏色,默認(rèn)綠色
*/
@property (nonatomic, strong)UIColor *progressColor;
/*
*
* 外面圓形顏色,默認(rèn)淺灰色
*/
@property (nonatomic, strong)UIColor *outCircleColor;
/*
*
* 中間圓形顏色,默認(rèn)白色
*/
@property (nonatomic, strong)UIColor *centerCircleColor;
/*
*
* 倒計時時間,默認(rèn)15秒
*/
@property (nonatomic, assign)float timeInterval;
結(jié)束
開發(fā)那么久都沒有在GitHub發(fā)布過作品,干脆寫一個簡單的控件發(fā)布一下奥帘。畢竟蒼蠅再小也是肉啊畔乙。
第一次發(fā)布開源作品,有寫的不好的地方或者有什么建議的翩概,歡迎指出牲距,謝謝。
GitHub入口:傳送門