Skip to content

Commit 47b7654

Browse files
committed
回调添加对象参数,便于处理有文本框取值
1 parent f264245 commit 47b7654

File tree

5 files changed

+12
-12
lines changed

5 files changed

+12
-12
lines changed

UIAlertView-Blocks/RIButtonItem.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
#import <Foundation/Foundation.h>
1010

11-
typedef void (^RIAction)();
11+
typedef void (^RIAction)(id sender);
1212

1313
@interface RIButtonItem : NSObject
1414

UIAlertView-Blocks/UIActionSheet+Blocks.m

+2-2
Original file line numberDiff line numberDiff line change
@@ -127,12 +127,12 @@ - (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSIn
127127
NSArray *buttonsArray = objc_getAssociatedObject(self, RI_BUTTON_ASS_KEY);
128128
RIButtonItem *item = [buttonsArray objectAtIndex:buttonIndex];
129129
if(item.action)
130-
item.action();
130+
item.action(actionSheet);
131131
}
132132

133133
if (self.dismissalAction)
134134
{
135-
self.dismissalAction();
135+
self.dismissalAction(actionSheet);
136136
}
137137

138138
objc_setAssociatedObject(self, RI_BUTTON_ASS_KEY, nil, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

UIAlertView-Blocks/UIAlertView+Blocks.m

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)butto
9595
RIButtonItem *item = [buttonsArray objectAtIndex:buttonIndex];
9696

9797
if (item.action) {
98-
item.action();
98+
item.action(alertView);
9999
}
100100
}
101101

UIAlertView-BlocksDemo/UIAlertView-BlocksDemo/ViewController.m

+8-8
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ - (IBAction)action:(id)sender {
3535
- (void)testAlert
3636
{
3737
RIButtonItem *cancelItem = [RIButtonItem itemWithLabel:@"取消"];
38-
RIButtonItem *OKItem = [RIButtonItem itemWithLabel:@"确定" action:^{
38+
RIButtonItem *OKItem = [RIButtonItem itemWithLabel:@"确定" action:^(UIAlertView *sender) {
3939
NSLog(@"确定");
4040
}];
4141
// UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Test" message:@"" cancelButtonItem:cancelItem otherButtonItems:OKItem, nil];
@@ -54,23 +54,23 @@ - (void)testAlert
5454
- (void)testActionSheet
5555
{
5656
/*RIButtonItem *cancelItem = [RIButtonItem itemWithLabel:@"取消"];
57-
RIButtonItem *OKItem = [RIButtonItem itemWithLabel:@"确定" action:^{
57+
RIButtonItem *OKItem = [RIButtonItem itemWithLabel:@"确定" action:^(id sender) {
5858
DLog(@"确定");
5959
}];
60-
RIButtonItem *deleteItem = [RIButtonItem itemWithLabel:@"删除" action:^{
60+
RIButtonItem *deleteItem = [RIButtonItem itemWithLabel:@"删除" action:^(id sender) {
6161
DLog(@"删除");
6262
}];
6363
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil cancelButtonItem:cancelItem destructiveButtonItem:deleteItem otherButtonItems:OKItem, nil];
6464
[actionSheet showInView:self.view];
65-
actionSheet.dismissalAction = ^{
65+
actionSheet.dismissalAction = ^(id sender) {
6666
DLog(@"dismissal");
6767
};*/
6868

6969
NSArray *names = @[ @"客服1", @"客服2", @"客服3", @"客服4" ];
7070

7171
UIActionSheet *sheet = [[UIActionSheet alloc] init];
7272
for (NSString *name in names) {
73-
RIButtonItem *item = [RIButtonItem itemWithLabel:name action:^{
73+
RIButtonItem *item = [RIButtonItem itemWithLabel:name action:^(id sender) {
7474
NSLog(@"name %@", name);
7575
}];
7676
[sheet addButtonItem:item];
@@ -81,16 +81,16 @@ - (void)testActionSheet
8181
// sheet.cancelButtonIndex = [sheet addButtonWithTitle:@"取消"];
8282
// sheet.destructiveButtonIndex = [sheet addButtonWithTitle:@"删除"];
8383

84-
[sheet addCancelButtonItem:[RIButtonItem itemWithLabel:@"取消" action:^{
84+
[sheet addCancelButtonItem:[RIButtonItem itemWithLabel:@"取消" action:^(id sender) {
8585
NSLog(@"cancel");
8686
}]];
87-
[sheet addDestructiveButtonItem:[RIButtonItem itemWithLabel:@"删除" action:^{
87+
[sheet addDestructiveButtonItem:[RIButtonItem itemWithLabel:@"删除" action:^(id sender) {
8888
NSLog(@"delete");
8989
}]];
9090

9191

9292
[sheet showInView:self.view];
93-
sheet.dismissalAction = ^{
93+
sheet.dismissalAction = ^(id sender) {
9494
NSLog(@"dismissal");
9595
};
9696
}

0 commit comments

Comments
 (0)