我已将该方法声明如下:
- (void)downloadCSVs:(void (^)(void))completion
它的身体是:
- (void)downloadCSVs:(void (^)(void))completion
{
[[Singleton sharedData] downloadCSVFilesFromServer:<MY_URL>];
}
并将此方法称为:
[self downloadCSVs:^
{
NSLog(@"Download Completed!");
}];
但是在下载之后,它没有执行NSLog。 请让我知道我错在哪里。
答案 0 :(得分:3)
您的区块未被调用,因为没有尝试调用它。
以下方法接受块作为参数,然后调用[Singleton downloadCSVFilesFromServer:]
,但它不会将块传递给此方法,并且不会自己调用它:
- (void)downloadCSVs:(void (^)(void))completion
{
[[Singleton sharedData] downloadCSVFilesFromServer:<MY_URL>];
}
您需要扩展[Singleton downloadCSVFilesFromServer:]
方法以接受block参数,并在完成后调用它。