block和代理和block区别的区别

ios 开发中 怎么使用block 代替代理方法
我的图书馆
ios 开发中 怎么使用block 代替代理方法
声明一个无返回值的block&1typedef&void(^onSearch)(NSString&*searchText);&2.在控制器中头文件.h中定义block,分两步:&1&定义成属性&1&a href="/s?wd=%40property&tn=_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YLnWRkPynkP1I9rHN-PWFB0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1TknHmvP1T4rjD1nHbsnWTzPf"&target="_blank"&class="baidu-highlight"&@property&/a&&(nonatomic)&&onSearch&searchB&2&定义一个block的setter方法1-(void)setSearchBlock:(void(^)(NSString&*searchText))&3.在控制器的实现文件.m中来实现12345-(void)setSearchBlock:(void(^)(NSString&*searchText))&block&{&&&&&&&&if&(block)&{&&&&&&&&&&&&&&&&&self.searchBlock&=&&&&&&&&&}}4.在控制器中使用block实现回调. 当点击search按钮时,将search的文本传递给订阅者12345-(void)searchHandler:(id)sender&{&&&&&&&if&(self.searchBlock)&{&&&&&&&&&&&&&&&&self.searchBlock(@"your&search&keyword")&&&&&&&&}}5.在订阅者中,接收过来的参数,并做其它操作1234YourVC&&*vc&=&[YourVC&new];[vc&setSearchBlock:^(NSString&*searchText)&{&&&&&&&&&&&&&NSLog(@"get&search&keyword")&&&&&&&&}]
TA的最新馆藏[转]&[转]&[转]&[转]&

我要回帖

更多关于 代理 block的区别 的文章

 

随机推荐