1

我已将方法声明如下:

- (void)downloadCSVs:(void (^)(void))completion

它的身体是:

- (void)downloadCSVs:(void (^)(void))completion
{
        [[Singleton sharedData] downloadCSVFilesFromServer:<MY_URL>];
}

并将此方法称为:

[self downloadCSVs:^
{
        NSLog(@"Download Completed!");
}];

但下载后,它没有执行 NSLog。请让我知道我错在哪里。

4

1 回答 1

3

您的块没有被调用,因为没有尝试调用它。

以下方法接受块作为参数,然后调用,[Singleton downloadCSVFilesFromServer:]但它不将块传递给此方法,也不调用它本身:

- (void)downloadCSVs:(void (^)(void))completion
{
    [[Singleton sharedData] downloadCSVFilesFromServer:<MY_URL>];
}

您需要扩展该[Singleton downloadCSVFilesFromServer:]方法以接受块参数并在完成时调用它。

于 2016-03-30T08:20:29.813 回答