ios怎么判断回调的block是否存在?
一、先创建一个简单的xcode工程 ViewController。h文件 // // ViewController。h // block回调 // // Created by pengxun523 on 14-4-16。 // Copyright (c) 2014年 pengxun523。 All rights reserved。 // #import 。h> @interface ViewController : UIViewCo...全部
一、先创建一个简单的xcode工程 ViewController。h文件 // // ViewController。h // block回调 // // Created by pengxun523 on 14-4-16。
// Copyright (c) 2014年 pengxun523。 All rights reserved。 // #import 。h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UIButton *btnOutlet; - (IBAction)btnClick:(UIButton *)sender; @end #import "ViewController。
h" #import "ShowBtnColor。h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; } -(void)chargeMyIphone:(void(^)(void))finishBlock { } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated。
} - (IBAction)btnClick:(UIButton *)sender { CGRect temp = CGRectMake(_btnOutlet。
frame。origin。x, _btnOutlet。frame。origin。y, _btnOutlet。frame。size。width+50, _btnOutlet。frame。size。
height+20); [ShowBtnColor ChangeRootViewBtnRect:temp blockcompletion:^(UIColor *colorEnum) { /*函数回调 当block执行时就会回到这里*/ _btnOutlet。
backgroundColor = colorEnum; }]; } @end ShowBtnColor。h文件 // // ShowBtnColor。
h // block回调 // // Created by pengxun523 on 14-4-22。 // Copyright (c) 2014年 pengxun523。
All rights reserved。 // #import 。h> typedef void (^Changcolor)(UIColor *colorEnum); //定义一个block返回值void参数为颜色值 @interface ShowBtnColor : NSObject //回调函数改变btn的颜色值 + (void)ChangeRootViewBtnRect:(CGRect)rect blockcompletion:(Changcolor)Changcolorblock; @end // // ShowBtnColor。
m // block回调 // // Created by pengxun523 on 14-4-22。 // Copyright (c) 2014年 pengxun523。
All rights reserved。 // #import "ShowBtnColor。
h" @implementation ShowBtnColor + (void)ChangeRootViewBtnRect:(CGRect)rect blockcompletion:(Changcolor)Changcolorblock { UIColor *temp = [UIColor greenColor]; Changcolorblock(temp); //执行block } @end 运行结果。收起