Skip to content

Commit bdee4d1

Browse files
committed
CocoaPods:0.1.1 - 优化代码结构与调用API方法
1 parent c93f652 commit bdee4d1

File tree

13 files changed

+238
-188
lines changed

13 files changed

+238
-188
lines changed

PPCounter.podspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
Pod::Spec.new do |s|
33

44
s.name = "PPCounter"
5-
s.version = "0.1.0"
6-
s.summary = "一款简单实用的数字加减动画,支持UILabel、UIButton显示"
5+
s.version = "0.1.1"
6+
s.summary = "一款使用简单的数字加减动画控件,支持UILabel、UIButton显示"
77

88
s.homepage = "https://github.com/jkpang/PPCounter.git"
99

PPCounter.xcodeproj/project.pbxproj

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
226FB27A1DB2568D000BE4F3 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 226FB2791DB2568D000BE4F3 /* Assets.xcassets */; };
1515
226FB27D1DB2568D000BE4F3 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 226FB27B1DB2568D000BE4F3 /* LaunchScreen.storyboard */; };
1616
226FB2881DB2568D000BE4F3 /* PPCounterTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 226FB2871DB2568D000BE4F3 /* PPCounterTests.m */; };
17-
226FB2951DB256CC000BE4F3 /* PPCounter.m in Sources */ = {isa = PBXBuildFile; fileRef = 226FB2941DB256CC000BE4F3 /* PPCounter.m */; };
17+
226FB2951DB256CC000BE4F3 /* PPCounterEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 226FB2941DB256CC000BE4F3 /* PPCounterEngine.m */; };
1818
226FB2981DB257E5000BE4F3 /* UILabel+PPCounter.m in Sources */ = {isa = PBXBuildFile; fileRef = 226FB2971DB257E5000BE4F3 /* UILabel+PPCounter.m */; };
1919
22E75AD61DB51F950046E7D8 /* UIButton+PPCounter.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E75AD51DB51F950046E7D8 /* UIButton+PPCounter.m */; };
2020
22E75AD91DB520C80046E7D8 /* PPCounterConst.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E75AD81DB520C80046E7D8 /* PPCounterConst.m */; };
@@ -31,6 +31,7 @@
3131
/* End PBXContainerItemProxy section */
3232

3333
/* Begin PBXFileReference section */
34+
22489AE01DBCE75000EFE361 /* PPCounter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PPCounter.h; sourceTree = "<group>"; };
3435
226FB26A1DB2568D000BE4F3 /* PPCounter.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PPCounter.app; sourceTree = BUILT_PRODUCTS_DIR; };
3536
226FB26E1DB2568D000BE4F3 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
3637
226FB2701DB2568D000BE4F3 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
@@ -44,8 +45,8 @@
4445
226FB2831DB2568D000BE4F3 /* PPCounterTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PPCounterTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
4546
226FB2871DB2568D000BE4F3 /* PPCounterTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PPCounterTests.m; sourceTree = "<group>"; };
4647
226FB2891DB2568D000BE4F3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
47-
226FB2931DB256CC000BE4F3 /* PPCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PPCounter.h; sourceTree = "<group>"; };
48-
226FB2941DB256CC000BE4F3 /* PPCounter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PPCounter.m; sourceTree = "<group>"; };
48+
226FB2931DB256CC000BE4F3 /* PPCounterEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PPCounterEngine.h; sourceTree = "<group>"; };
49+
226FB2941DB256CC000BE4F3 /* PPCounterEngine.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PPCounterEngine.m; sourceTree = "<group>"; };
4950
226FB2961DB257E5000BE4F3 /* UILabel+PPCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UILabel+PPCounter.h"; sourceTree = "<group>"; };
5051
226FB2971DB257E5000BE4F3 /* UILabel+PPCounter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UILabel+PPCounter.m"; sourceTree = "<group>"; };
5152
22E75AD41DB51F950046E7D8 /* UIButton+PPCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIButton+PPCounter.h"; sourceTree = "<group>"; };
@@ -127,8 +128,9 @@
127128
226FB2921DB256AB000BE4F3 /* PPCounter */ = {
128129
isa = PBXGroup;
129130
children = (
130-
226FB2931DB256CC000BE4F3 /* PPCounter.h */,
131-
226FB2941DB256CC000BE4F3 /* PPCounter.m */,
131+
22489AE01DBCE75000EFE361 /* PPCounter.h */,
132+
226FB2931DB256CC000BE4F3 /* PPCounterEngine.h */,
133+
226FB2941DB256CC000BE4F3 /* PPCounterEngine.m */,
132134
22E75AD71DB520C80046E7D8 /* PPCounterConst.h */,
133135
22E75AD81DB520C80046E7D8 /* PPCounterConst.m */,
134136
226FB2961DB257E5000BE4F3 /* UILabel+PPCounter.h */,
@@ -244,7 +246,7 @@
244246
22E75AD61DB51F950046E7D8 /* UIButton+PPCounter.m in Sources */,
245247
226FB2751DB2568D000BE4F3 /* ViewController.m in Sources */,
246248
226FB2721DB2568D000BE4F3 /* AppDelegate.m in Sources */,
247-
226FB2951DB256CC000BE4F3 /* PPCounter.m in Sources */,
249+
226FB2951DB256CC000BE4F3 /* PPCounterEngine.m in Sources */,
248250
226FB26F1DB2568D000BE4F3 /* main.m in Sources */,
249251
22E75AD91DB520C80046E7D8 /* PPCounterConst.m in Sources */,
250252
226FB2981DB257E5000BE4F3 /* UILabel+PPCounter.m in Sources */,

PPCounter/PPCounter/PPCounter.h

Lines changed: 7 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,16 @@
22
// PPCounter.h
33
// PPCounter
44
//
5-
// Created by AndyPang on 16/10/15.
5+
// Created by AndyPang on 16/10/23.
66
// Copyright © 2016年 AndyPang. All rights reserved.
77
//
88

9-
#import <Foundation/Foundation.h>
10-
#import "PPCounterConst.h"
9+
#ifndef PPCounter_h
10+
#define PPCounter_h
1111

12-
@interface PPCounter : NSObject
12+
#import "PPCounterEngine.h"
13+
#import "UILabel+PPCounter.h"
14+
#import "UIButton+PPCounter.h"
1315

14-
/**
15-
类方法创建一个计数器的实例
16-
*/
17-
+ (instancetype)counter;
1816

19-
/**
20-
在指定时间内数字从 numberA -> numberB
21-
22-
@param starNumer 开始的数字
23-
@param endNumber 结束的数字
24-
@param duration 指定的时间
25-
@param animationType 动画类型
26-
@param numberBlock 当前数字的回调
27-
@param completionBlock 已完成的回调
28-
*/
29-
- (void)fromNumber:(CGFloat)starNumer toNumber:(CGFloat)endNumber duration:(CFTimeInterval)duration animationType:(PPCounterAnimationType)animationType currentNumber:(PPCurrentNumberBlock)numberBlock complete:(PPCompletionBlock)completionBlock;
30-
31-
@end
17+
#endif /* PPCounter_h */

PPCounter/PPCounter/PPCounterConst.h

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@
66
// Copyright © 2016年 AndyPang. All rights reserved.
77
//
88

9+
/*
10+
*********************************************************************************
11+
*
12+
* 如果您在使用 PPCounter 的过程中出现bug或有更好的建议,还请及时以下列方式联系我,我会及
13+
* 时修复bug,解决问题.
14+
*
15+
* Weibo : CoderPang
16+
* Email : jkpang@outlook.com
17+
* QQ : 2406552315
18+
* GitHub: https://github.com/jkpang
19+
*
20+
* 如果 PPCounter 好用,希望您能Star支持,你的 ⭐️ 是我持续更新的动力!
21+
*
22+
*********************************************************************************
23+
*/
24+
925
#import <Foundation/Foundation.h>
1026
#import <UIKit/UIKit.h>
1127

PPCounter/PPCounter/PPCounterEngine.h

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
//
2+
// PPCounter.h
3+
// PPCounter
4+
//
5+
// Created by AndyPang on 16/10/15.
6+
// Copyright © 2016年 AndyPang. All rights reserved.
7+
//
8+
9+
/*
10+
*********************************************************************************
11+
*
12+
* 如果您在使用 PPCounter 的过程中出现bug或有更好的建议,还请及时以下列方式联系我,我会及
13+
* 时修复bug,解决问题.
14+
*
15+
* Weibo : CoderPang
16+
* Email : jkpang@outlook.com
17+
* QQ : 2406552315
18+
* GitHub: https://github.com/jkpang
19+
*
20+
* 如果 PPCounter 好用,希望您能Star支持,你的 ⭐️ 是我持续更新的动力!
21+
*
22+
*********************************************************************************
23+
*/
24+
25+
26+
#import <Foundation/Foundation.h>
27+
#import "PPCounterConst.h"
28+
29+
@interface PPCounterEngine : NSObject
30+
31+
/**
32+
类方法创建一个计数器的实例
33+
*/
34+
+ (instancetype)counterEngine;
35+
36+
/**
37+
在指定时间内数字从 numberA -> numberB
38+
39+
@param starNumer 开始的数字
40+
@param endNumber 结束的数字
41+
@param duration 指定的时间
42+
@param animationType 动画类型
43+
@param numberBlock 当前数字的回调
44+
@param completionBlock 已完成的回调
45+
*/
46+
- (void)fromNumber:(CGFloat)starNumer toNumber:(CGFloat)endNumber duration:(CFTimeInterval)duration animationType:(PPCounterAnimationType)animationType currentNumber:(PPCurrentNumberBlock)numberBlock complete:(PPCompletionBlock)completionBlock;
47+
48+
@end

PPCounter/PPCounter/PPCounter.m renamed to PPCounter/PPCounter/PPCounterEngine.m

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
//
88

99
#import <UIKit/UIKit.h>
10-
#import "PPCounter.h"
10+
#import "PPCounterEngine.h"
1111

1212
/** 函数指针*/
1313
typedef CGFloat (*PPCurrentBufferFunction)(CGFloat);
1414

1515

16-
@interface PPCounter ()
16+
@interface PPCounterEngine ()
1717
/** 定时器*/
1818
@property (nonatomic, strong) CADisplayLink *timer;
1919
/** 开始的数字*/
@@ -38,7 +38,7 @@ @interface PPCounter ()
3838

3939
@end
4040

41-
@implementation PPCounter
41+
@implementation PPCounterEngine
4242

4343
- (instancetype)init
4444
{
@@ -49,7 +49,7 @@ - (instancetype)init
4949
return self;
5050
}
5151

52-
+ (instancetype)counter
52+
+ (instancetype)counterEngine
5353
{
5454
return [[self alloc] init];
5555
}

PPCounter/PPCounter/UIButton+PPCounter.h

Lines changed: 55 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -6,63 +6,73 @@
66
// Copyright © 2016年 AndyPang. All rights reserved.
77
//
88

9+
/*
10+
*********************************************************************************
11+
*
12+
* 如果您在使用 PPCounter 的过程中出现bug或有更好的建议,还请及时以下列方式联系我,我会及
13+
* 时修复bug,解决问题.
14+
*
15+
* Weibo : CoderPang
16+
* Email : jkpang@outlook.com
17+
* QQ : 2406552315
18+
* GitHub: https://github.com/jkpang
19+
*
20+
* 如果 PPCounter 好用,希望您能Star支持,你的 ⭐️ 是我持续更新的动力!
21+
*
22+
*********************************************************************************
23+
*/
24+
925
#import <UIKit/UIKit.h>
10-
#import "PPCounter.h"
26+
#import "PPCounterEngine.h"
1127

1228
@interface UIButton (PPCounter)
1329

1430
/** 动画类型*/
1531
@property (nonatomic, assign) PPCounterAnimationType counterAnimationType;
1632

17-
/**
18-
在1.5s内,一般字体属性UIButton中的数字从 0 -> number
19-
20-
@param number 结束的数字
21-
@param formatBlock 设置字体一般属性的block
22-
*/
23-
- (void)pp_fromZeroToNumber:(CGFloat)number formatBlock:(PPFormatBlock)formatBlock;
24-
25-
26-
/**
27-
在1.5s内,富文本字体属性UIButton中的数字从 0 -> number
28-
29-
@param number 结束的数字
30-
@param attributedFormatBlock 设置富文本字体属性的Block
31-
*/
32-
- (void)pp_fromZeroToNumber:(CGFloat)number attributedFormatBlock:(PPAttributedFormatBlock)attributedFormatBlock;
33+
#pragma mark - normal
3334

3435
/**
35-
在1.5s内,一般字体属性UIButton中的数字从 numberA -> numberB
36+
正常字体属性UIButton中的数字在指定时间从 numberA -> numberB,
3637
3738
@param numberA 开始的数字
3839
@param numberB 结束的数字
39-
@param formatBlock 设置字体一般属性的block
40+
@param duration 持续时间
41+
@param formatBlock 设置字体一般属性的Block
4042
*/
41-
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB formatBlock:(PPFormatBlock)formatBlock;
42-
43+
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration formatBlock:(PPFormatBlock)formatBlock;
4344

4445
/**
45-
在1.5s内,富文本字体属性UIButton中的数字从 numberA -> numberB
46+
1.正常字体属性UIButton中的数字在指定时间从 numberA -> numberB,
47+
2.有结束回调
4648
47-
@param numberA 开始的数字
48-
@param numberB 结束的数字
49-
@param attributedFormatBlock 设置富文本字体属性的Block
49+
@param numberA 开始的数字
50+
@param numberB 结束的数字
51+
@param duration 持续时间
52+
@param formatBlock 设置一般字体的Block
53+
@param completionBlock 完成的Block
5054
*/
51-
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB attributedFormatBlock:(PPAttributedFormatBlock)attributedFormatBlock;
55+
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration formatBlock:(PPFormatBlock)formatBlock completeBlock:(PPCompletionBlock)completionBlock;
5256

5357
/**
54-
在指定时间内,一般字体属性UIButton中的数字从 numberA -> numberB,
58+
1.正常字体属性UIButton中的数字在指定时间从 numberA -> numberB,
59+
2.可设置动画类型,
60+
3.有结束回调
5561
56-
@param numberA 开始的数字
57-
@param numberB 结束的数字
58-
@param duration 持续时间
59-
@param formatBlock 设置字体一般属性的block
62+
@param numberA 开始的数字
63+
@param numberB 结束的数字
64+
@param duration 持续时间
65+
@param animationType 动画类型
66+
@param formatBlock 设置字体一般属性的block
67+
@param completionBlock 完成的block
6068
*/
61-
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration formatBlock:(PPFormatBlock)formatBlock;
69+
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration animationType:(PPCounterAnimationType)animationType formatBlock:(PPFormatBlock)formatBlock completeBlock:(PPCompletionBlock)completionBlock;
6270

6371

72+
#pragma mark - attributed
73+
6474
/**
65-
在指定时间内,富文本字体属性UIButton中的数字从 numberA -> numberB,
75+
富文本字体属性UIButton中的数字在指定时间从 numberA -> numberB,
6676
6777
@param numberA 开始的数字
6878
@param numberB 结束的数字
@@ -72,30 +82,29 @@
7282
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration attributedFormatBlock:(PPAttributedFormatBlock)attributedFormatBlock;
7383

7484
/**
75-
在指定时间内,一般字体属性UIButton中的数字从 numberA -> numberB,
76-
可设置动画类型
85+
1.富文本字体属性UIButton中的数字在指定时间从 numberA -> numberB,
86+
2.有结束回调
7787
78-
@param numberA 开始的数字
79-
@param numberB 结束的数字
80-
@param duration 持续时间
81-
@param animationType 动画类型
82-
@param formatBlock 设置字体一般属性的block
83-
@param completionBlock 完成的block
88+
@param numberA 开始的数字
89+
@param numberB 结束的数字
90+
@param duration 持续时间
91+
@param attributedFormatBlock 设置富文本字体属性的Block
92+
@param completionBlock 完成的Block
8493
*/
85-
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration animationType:(PPCounterAnimationType)animationType formatBlock:(PPFormatBlock)formatBlock completeBlock:(PPCompletionBlock)completionBlock;
94+
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration attributedFormatBlock:(PPAttributedFormatBlock)attributedFormatBlock completeBlock:(PPCompletionBlock)completionBlock;
8695

8796
/**
88-
在指定时间内,富文本字体属性UIButton中的数字从 numberA -> numberB,
89-
可设置动画类型
97+
1.富文本字体属性UIButton中的数字在指定时间从 numberA -> numberB,
98+
2.可设置动画类型,
99+
3.有结束回调
90100
91101
@param numberA 开始的数字
92102
@param numberB 结束的数字
93103
@param duration 持续时间
94104
@param animationType 动画类型
95105
@param attributedFormatBlock 设置富文本字体属性的Block
96-
@param completionBlock 完成的block
106+
@param completionBlock 完成的Block
97107
*/
98108
- (void)pp_fromNumber:(CGFloat)numberA toNumber:(CGFloat)numberB duration:(CFTimeInterval)duration animationType:(PPCounterAnimationType)animationType attributedFormatBlock:(PPAttributedFormatBlock)attributedFormatBlock completeBlock:(PPCompletionBlock)completionBlock;
99109

100-
101110
@end

0 commit comments

Comments
 (0)