block的声明和定义:
#import <UIKit/UIKit.h> @interface RegisterView : UIView //typedef 这个是重新定义,typeof是求类型 typedef void (^RegisterBlock)(NSString*); //定义block @property (nonatomic,strong) RegisterBlock registerBlock; @end
这里不需要遵循什么代理,直就是实现block,
//使用block执行,因为这类已经定义了,并且只有赋值的执行,这里并不是赋值那么简单, _registerView.registerBlock = ^(NSString * str){ //因为它获取了打印的属性 NSLog(@"str is : %@",str); //在这里可实现相应的界面转换等等逻辑,但是内存不是和当前的方法在一块 }; //这里并不是赋值,并不是get的类似,而是获取数据,当然就是使用block啦
这样就可以完成了,比代理方便了很多。yeah!!!!!!
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-21 13:28:17