阻止没有被执行

时间:2016-03-30 08:14:39

标签: ios block ios9.2

我已将该方法声明如下:

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

它的身体是:

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

并将此方法称为:

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

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

1 个答案:

答案 0 :(得分:3)

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

以下方法接受块作为参数,然后调用[Singleton downloadCSVFilesFromServer:],但它不会将块传递给此方法,并且不会自己调用它:

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

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