项目中有个小功能,要加处理后给个提示信息什么的,所以我的需要知道什么时候操作处理完了,然后再跳出相应的提示信息,初次尝试了下用block回调的方式:
上代码吧:
不带返回的参数:
//删除电子书
-(void)deleteEbook:(void(^)())ebook
{
NSArray *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentsPath = [docPath objectAtIndex:0];
NSFileManager *fileM = [NSFileManager defaultManager];
if ([fileM fileExistsAtPath:documentsPath]) {
NSError *err = nil;
[fileM removeItemAtPath:documentsPath error:&err];
}
if (ebook) {
ebook();
}
}
[self deleteEbook:^{
[_deleteBtn setTitle:[NSString stringWithFormat:@"%.2fM",[DataSource sharedDataSource].ebokSize] forState:UIControlStateNormal];
_hud.labelText = @"删除成功";
[_hud show:YES];
[_hud hide:YES afterDelay:2];
}];
带返回的参数:
//删除电子书
-(void)deleteEbook:(void(^)(NSString *ysamg))ebook
{
NSString *ysamg = @"ysamg";
if (ebook) {
ebook(ysamg);
}
}
调用:
[self deleteEbook:^(NSString *ysamg)
{
nslog(@"%@",ysamg);
}];