Skip to content

Commit 2a4d31d

Browse files
committed
add
1 parent 32742de commit 2a4d31d

File tree

19 files changed

+747
-150
lines changed

19 files changed

+747
-150
lines changed

CCActionSheet.xcodeproj/project.pbxproj

Lines changed: 82 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -7,30 +7,42 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10-
AA2159211C5B40A400F4076C /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = AA2159201C5B40A400F4076C /* main.m */; };
11-
AA2159241C5B40A400F4076C /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = AA2159231C5B40A400F4076C /* AppDelegate.m */; };
12-
AA2159271C5B40A400F4076C /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = AA2159261C5B40A400F4076C /* ViewController.m */; };
13-
AA21592A1C5B40A400F4076C /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA2159281C5B40A400F4076C /* Main.storyboard */; };
14-
AA21592C1C5B40A400F4076C /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = AA21592B1C5B40A400F4076C /* Assets.xcassets */; };
15-
AA21592F1C5B40A400F4076C /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AA21592D1C5B40A400F4076C /* LaunchScreen.storyboard */; };
16-
AA2159381C5B410500F4076C /* CCActionSheet.m in Sources */ = {isa = PBXBuildFile; fileRef = AA2159371C5B410500F4076C /* CCActionSheet.m */; };
17-
AAE1DC561C5B6A5700568214 /* IMG_0477.PNG in Resources */ = {isa = PBXBuildFile; fileRef = AAE1DC551C5B6A5700568214 /* IMG_0477.PNG */; };
10+
AAE03BD11CA138AA00C052F8 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = AAE03BC61CA138AA00C052F8 /* AppDelegate.m */; };
11+
AAE03BD21CA138AA00C052F8 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BC71CA138AA00C052F8 /* Assets.xcassets */; };
12+
AAE03BD31CA138AA00C052F8 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BC81CA138AA00C052F8 /* LaunchScreen.storyboard */; };
13+
AAE03BD41CA138AA00C052F8 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BCA1CA138AA00C052F8 /* Main.storyboard */; };
14+
AAE03BD51CA138AA00C052F8 /* IMG_0477.PNG in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BCC1CA138AA00C052F8 /* IMG_0477.PNG */; };
15+
AAE03BD61CA138AA00C052F8 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BCD1CA138AA00C052F8 /* Info.plist */; };
16+
AAE03BD71CA138AA00C052F8 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = AAE03BCE1CA138AA00C052F8 /* main.m */; };
17+
AAE03BD81CA138AA00C052F8 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = AAE03BD01CA138AA00C052F8 /* ViewController.m */; };
18+
AAE03BDD1CA138C000C052F8 /* CCActionSheet.m in Sources */ = {isa = PBXBuildFile; fileRef = AAE03BDA1CA138C000C052F8 /* CCActionSheet.m */; };
19+
AAE03BDE1CA138C000C052F8 /* CCActionTableCell.m in Sources */ = {isa = PBXBuildFile; fileRef = AAE03BDC1CA138C000C052F8 /* CCActionTableCell.m */; };
20+
AAE03BE01CA13A5F00C052F8 /* icon_connected.png in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BDF1CA13A5F00C052F8 /* icon_connected.png */; };
21+
AAE03BE41CA13C8A00C052F8 /* center.gif in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BE11CA13C8A00C052F8 /* center.gif */; };
22+
AAE03BE51CA13C8A00C052F8 /* scroll.gif in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BE21CA13C8A00C052F8 /* scroll.gif */; };
23+
AAE03BE61CA13C8A00C052F8 /* list.gif in Resources */ = {isa = PBXBuildFile; fileRef = AAE03BE31CA13C8A00C052F8 /* list.gif */; };
1824
/* End PBXBuildFile section */
1925

2026
/* Begin PBXFileReference section */
2127
AA21591C1C5B40A400F4076C /* CCActionSheet.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CCActionSheet.app; sourceTree = BUILT_PRODUCTS_DIR; };
22-
AA2159201C5B40A400F4076C /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
23-
AA2159221C5B40A400F4076C /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
24-
AA2159231C5B40A400F4076C /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
25-
AA2159251C5B40A400F4076C /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
26-
AA2159261C5B40A400F4076C /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
27-
AA2159291C5B40A400F4076C /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
28-
AA21592B1C5B40A400F4076C /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
29-
AA21592E1C5B40A400F4076C /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
30-
AA2159301C5B40A400F4076C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
31-
AA2159361C5B410500F4076C /* CCActionSheet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CCActionSheet.h; sourceTree = "<group>"; };
32-
AA2159371C5B410500F4076C /* CCActionSheet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCActionSheet.m; sourceTree = "<group>"; };
33-
AAE1DC551C5B6A5700568214 /* IMG_0477.PNG */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = IMG_0477.PNG; sourceTree = "<group>"; };
28+
AAE03BC51CA138AA00C052F8 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
29+
AAE03BC61CA138AA00C052F8 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
30+
AAE03BC71CA138AA00C052F8 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
31+
AAE03BC91CA138AA00C052F8 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
32+
AAE03BCB1CA138AA00C052F8 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
33+
AAE03BCC1CA138AA00C052F8 /* IMG_0477.PNG */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = IMG_0477.PNG; sourceTree = "<group>"; };
34+
AAE03BCD1CA138AA00C052F8 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
35+
AAE03BCE1CA138AA00C052F8 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
36+
AAE03BCF1CA138AA00C052F8 /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
37+
AAE03BD01CA138AA00C052F8 /* ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
38+
AAE03BD91CA138C000C052F8 /* CCActionSheet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CCActionSheet.h; sourceTree = "<group>"; };
39+
AAE03BDA1CA138C000C052F8 /* CCActionSheet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCActionSheet.m; sourceTree = "<group>"; };
40+
AAE03BDB1CA138C000C052F8 /* CCActionTableCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CCActionTableCell.h; sourceTree = "<group>"; };
41+
AAE03BDC1CA138C000C052F8 /* CCActionTableCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCActionTableCell.m; sourceTree = "<group>"; };
42+
AAE03BDF1CA13A5F00C052F8 /* icon_connected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon_connected.png; sourceTree = "<group>"; };
43+
AAE03BE11CA13C8A00C052F8 /* center.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = center.gif; sourceTree = "<group>"; };
44+
AAE03BE21CA13C8A00C052F8 /* scroll.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = scroll.gif; sourceTree = "<group>"; };
45+
AAE03BE31CA13C8A00C052F8 /* list.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = list.gif; sourceTree = "<group>"; };
3446
/* End PBXFileReference section */
3547

3648
/* Begin PBXFrameworksBuildPhase section */
@@ -47,6 +59,8 @@
4759
AA2159131C5B40A400F4076C = {
4860
isa = PBXGroup;
4961
children = (
62+
AA21591F1C5B40A400F4076C /* Supporting Files */,
63+
AAE03BC41CA138AA00C052F8 /* Demo */,
5064
AA21591E1C5B40A400F4076C /* CCActionSheet */,
5165
AA21591D1C5B40A400F4076C /* Products */,
5266
);
@@ -63,28 +77,41 @@
6377
AA21591E1C5B40A400F4076C /* CCActionSheet */ = {
6478
isa = PBXGroup;
6579
children = (
66-
AAE1DC551C5B6A5700568214 /* IMG_0477.PNG */,
67-
AA2159221C5B40A400F4076C /* AppDelegate.h */,
68-
AA2159231C5B40A400F4076C /* AppDelegate.m */,
69-
AA2159251C5B40A400F4076C /* ViewController.h */,
70-
AA2159261C5B40A400F4076C /* ViewController.m */,
71-
AA2159281C5B40A400F4076C /* Main.storyboard */,
72-
AA21592B1C5B40A400F4076C /* Assets.xcassets */,
73-
AA21592D1C5B40A400F4076C /* LaunchScreen.storyboard */,
74-
AA2159301C5B40A400F4076C /* Info.plist */,
75-
AA21591F1C5B40A400F4076C /* Supporting Files */,
76-
AA2159361C5B410500F4076C /* CCActionSheet.h */,
77-
AA2159371C5B410500F4076C /* CCActionSheet.m */,
80+
AAE03BD91CA138C000C052F8 /* CCActionSheet.h */,
81+
AAE03BDA1CA138C000C052F8 /* CCActionSheet.m */,
82+
AAE03BDB1CA138C000C052F8 /* CCActionTableCell.h */,
83+
AAE03BDC1CA138C000C052F8 /* CCActionTableCell.m */,
7884
);
7985
path = CCActionSheet;
8086
sourceTree = "<group>";
8187
};
8288
AA21591F1C5B40A400F4076C /* Supporting Files */ = {
8389
isa = PBXGroup;
8490
children = (
85-
AA2159201C5B40A400F4076C /* main.m */,
8691
);
8792
name = "Supporting Files";
93+
path = CCActionSheet;
94+
sourceTree = "<group>";
95+
};
96+
AAE03BC41CA138AA00C052F8 /* Demo */ = {
97+
isa = PBXGroup;
98+
children = (
99+
AAE03BC51CA138AA00C052F8 /* AppDelegate.h */,
100+
AAE03BC61CA138AA00C052F8 /* AppDelegate.m */,
101+
AAE03BC71CA138AA00C052F8 /* Assets.xcassets */,
102+
AAE03BC81CA138AA00C052F8 /* LaunchScreen.storyboard */,
103+
AAE03BCA1CA138AA00C052F8 /* Main.storyboard */,
104+
AAE03BCC1CA138AA00C052F8 /* IMG_0477.PNG */,
105+
AAE03BE11CA13C8A00C052F8 /* center.gif */,
106+
AAE03BE21CA13C8A00C052F8 /* scroll.gif */,
107+
AAE03BE31CA13C8A00C052F8 /* list.gif */,
108+
AAE03BDF1CA13A5F00C052F8 /* icon_connected.png */,
109+
AAE03BCD1CA138AA00C052F8 /* Info.plist */,
110+
AAE03BCE1CA138AA00C052F8 /* main.m */,
111+
AAE03BCF1CA138AA00C052F8 /* ViewController.h */,
112+
AAE03BD01CA138AA00C052F8 /* ViewController.m */,
113+
);
114+
path = Demo;
88115
sourceTree = "<group>";
89116
};
90117
/* End PBXGroup section */
@@ -144,10 +171,15 @@
144171
isa = PBXResourcesBuildPhase;
145172
buildActionMask = 2147483647;
146173
files = (
147-
AA21592F1C5B40A400F4076C /* LaunchScreen.storyboard in Resources */,
148-
AAE1DC561C5B6A5700568214 /* IMG_0477.PNG in Resources */,
149-
AA21592C1C5B40A400F4076C /* Assets.xcassets in Resources */,
150-
AA21592A1C5B40A400F4076C /* Main.storyboard in Resources */,
174+
AAE03BD41CA138AA00C052F8 /* Main.storyboard in Resources */,
175+
AAE03BE41CA13C8A00C052F8 /* center.gif in Resources */,
176+
AAE03BD51CA138AA00C052F8 /* IMG_0477.PNG in Resources */,
177+
AAE03BD21CA138AA00C052F8 /* Assets.xcassets in Resources */,
178+
AAE03BD61CA138AA00C052F8 /* Info.plist in Resources */,
179+
AAE03BE51CA13C8A00C052F8 /* scroll.gif in Resources */,
180+
AAE03BE01CA13A5F00C052F8 /* icon_connected.png in Resources */,
181+
AAE03BE61CA13C8A00C052F8 /* list.gif in Resources */,
182+
AAE03BD31CA138AA00C052F8 /* LaunchScreen.storyboard in Resources */,
151183
);
152184
runOnlyForDeploymentPostprocessing = 0;
153185
};
@@ -158,30 +190,31 @@
158190
isa = PBXSourcesBuildPhase;
159191
buildActionMask = 2147483647;
160192
files = (
161-
AA2159271C5B40A400F4076C /* ViewController.m in Sources */,
162-
AA2159241C5B40A400F4076C /* AppDelegate.m in Sources */,
163-
AA2159211C5B40A400F4076C /* main.m in Sources */,
164-
AA2159381C5B410500F4076C /* CCActionSheet.m in Sources */,
193+
AAE03BD11CA138AA00C052F8 /* AppDelegate.m in Sources */,
194+
AAE03BD71CA138AA00C052F8 /* main.m in Sources */,
195+
AAE03BDE1CA138C000C052F8 /* CCActionTableCell.m in Sources */,
196+
AAE03BD81CA138AA00C052F8 /* ViewController.m in Sources */,
197+
AAE03BDD1CA138C000C052F8 /* CCActionSheet.m in Sources */,
165198
);
166199
runOnlyForDeploymentPostprocessing = 0;
167200
};
168201
/* End PBXSourcesBuildPhase section */
169202

170203
/* Begin PBXVariantGroup section */
171-
AA2159281C5B40A400F4076C /* Main.storyboard */ = {
204+
AAE03BC81CA138AA00C052F8 /* LaunchScreen.storyboard */ = {
172205
isa = PBXVariantGroup;
173206
children = (
174-
AA2159291C5B40A400F4076C /* Base */,
207+
AAE03BC91CA138AA00C052F8 /* Base */,
175208
);
176-
name = Main.storyboard;
209+
name = LaunchScreen.storyboard;
177210
sourceTree = "<group>";
178211
};
179-
AA21592D1C5B40A400F4076C /* LaunchScreen.storyboard */ = {
212+
AAE03BCA1CA138AA00C052F8 /* Main.storyboard */ = {
180213
isa = PBXVariantGroup;
181214
children = (
182-
AA21592E1C5B40A400F4076C /* Base */,
215+
AAE03BCB1CA138AA00C052F8 /* Base */,
183216
);
184-
name = LaunchScreen.storyboard;
217+
name = Main.storyboard;
185218
sourceTree = "<group>";
186219
};
187220
/* End PBXVariantGroup section */
@@ -271,7 +304,7 @@
271304
isa = XCBuildConfiguration;
272305
buildSettings = {
273306
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
274-
INFOPLIST_FILE = CCActionSheet/Info.plist;
307+
INFOPLIST_FILE = Demo/Info.plist;
275308
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
276309
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
277310
PRODUCT_BUNDLE_IDENTIFIER = com.megahealth.MPlus.CCActionSheet;
@@ -283,7 +316,7 @@
283316
isa = XCBuildConfiguration;
284317
buildSettings = {
285318
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
286-
INFOPLIST_FILE = CCActionSheet/Info.plist;
319+
INFOPLIST_FILE = Demo/Info.plist;
287320
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
288321
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
289322
PRODUCT_BUNDLE_IDENTIFIER = com.megahealth.MPlus.CCActionSheet;

CCActionSheet/CCActionSheet.h

Lines changed: 91 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,30 +2,114 @@
22
// CCActionSheet.h
33
// CCActionSheet
44
//
5-
// Created by maxmoo on 16/1/29.
5+
// Created by maxmoo on 16/3/22.
66
// Copyright © 2016年 maxmoo. All rights reserved.
77
//
88

99
#import <UIKit/UIKit.h>
1010

11+
typedef void(^ClickedIndexBlock)(NSInteger index);
12+
13+
@class CCActionSheet;
1114
@protocol CCActionSheetDelegate <NSObject>
1215

1316
@optional
14-
- (void)cc_actionSheetDidSelectedIndex:(NSInteger)index;
1517

18+
/**
19+
* @brief 被选中的按钮
20+
*
21+
* @param actionSheet PQActionSheet
22+
* @param buttonIndex 选中按钮的Index(取消按钮默认为最后一个按钮)
23+
*/
24+
- (void)actionSheet:(CCActionSheet *)actionSheet
25+
clickedButtonAtIndex:(NSInteger)buttonIndex;
26+
/**
27+
* @brief PQActionSheet将要显示
28+
*
29+
* @param actionSheet PQActionSheet
30+
*/
31+
- (void)willPresentActionSheet:(CCActionSheet *)actionSheet;
32+
/**
33+
* @brief PQActionSheet已经显示
34+
*
35+
* @param actionSheet PQActionSheet
36+
*/
37+
- (void)didPresentActionSheet:(CCActionSheet *)actionSheet;
1638
@end
1739

1840

1941

42+
43+
44+
//action的style
45+
typedef enum : NSUInteger {
46+
CCActionSheetStyleTextCenter = 0,
47+
CCActionSheetStyleIconLeft,
48+
} CCActionSheetStyle;
49+
50+
2051
@interface CCActionSheet : UIView
2152

22-
@property (strong, nonatomic) id<CCActionSheetDelegate> delegate;
53+
@property (strong,nonatomic) NSString *titleText;
54+
@property (strong,nonatomic) NSString *cancelText;
55+
56+
@property (weak, nonatomic) id<CCActionSheetDelegate> delegate;
57+
58+
//最多可显示maxcount个cell的高度
59+
@property (assign, nonatomic) CGFloat maxCount;
60+
//cell的样式,有两种:一种居中显示,另一种左对齐显示并带有icon
61+
@property (assign, nonatomic) CCActionSheetStyle style;
62+
//放有icon图片名的字符串数组(以后会改进这种方式)
63+
@property (strong, nonatomic) NSArray *iconImageNameArray;
2364

24-
+ (instancetype)shareSheet;
2565
/**
26-
区分取消和选择,使用array
27-
回调使用协议
66+
* @brief 初始化PQActionSheet
67+
*
68+
* @param title ActionSheet标题
69+
* @param delegate 委托
70+
* @param cancelButtonTitle 取消按钮标题
71+
* @param otherButtonTitles 其他按钮标题
72+
*
73+
* @return PQActionSheet
2874
*/
29-
- (void)cc_actionSheetWithSelectArray:(NSArray *)array cancelTitle:(NSString *)cancel delegate:(id<CCActionSheetDelegate>)delegate;
75+
- (instancetype)initWithTitle:(NSString *)title
76+
delegate:(id<CCActionSheetDelegate>)delegate
77+
cancelButtonTitle:(NSString *)cancelButtonTitle
78+
otherButtonTitles:(NSString *)otherButtonTitles, ...;
79+
80+
81+
82+
/**
83+
* @brief 初始化PQActionSheet(Block回调结果)
84+
*
85+
* @param title ActionSheet标题
86+
* @param block Block回调选中的Index
87+
* @param cancelButtonTitle 取消按钮标题
88+
* @param otherButtonTitles 其他按钮标题
89+
*
90+
* @return PQActionSheet
91+
*/
92+
- (instancetype)initWithTitle:(NSString *)title
93+
clickedAtIndex:(ClickedIndexBlock)block
94+
cancelButtonTitle:(NSString *)cancelButtonTitle
95+
otherButtonTitles:(NSString *)otherButtonTitles, ...;
96+
97+
98+
99+
/**
100+
* @brief 显示ActionSheet
101+
*/
102+
- (void)show;
103+
- (void)hide;
104+
/**
105+
* @brief 添加按钮
106+
*
107+
* @param title 按钮标题
108+
*
109+
* @return 按钮的Index
110+
*/
111+
- (NSInteger)addButtonWithTitle:(NSString *)title;
112+
30113

31114
@end
115+

0 commit comments

Comments
 (0)