Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 为什么从未调用我的完成处理程序?_Objective C_Completionhandler - Fatal编程技术网

Objective c 为什么从未调用我的完成处理程序?

Objective c 为什么从未调用我的完成处理程序?,objective-c,completionhandler,Objective C,Completionhandler,我试图调用一个完成处理程序,但从未调用过。 我做错了什么 我看到第一个NSLog(“在我的第二个函数中输入”),但第二个NSLog(“完成处理程序”)从未出现在我的控制台中 下面是函数的定义和带完成的调用者 - (void)myFirstFunction:(BOOL)selected numberOfBrothers:(int)brothers completion:(void (^)(void))completion - (void)mySecondFunction { NSLog(

我试图调用一个完成处理程序,但从未调用过。 我做错了什么

我看到第一个NSLog(“在我的第二个函数中输入”),但第二个NSLog(“完成处理程序”)从未出现在我的控制台中

下面是函数的定义和带完成的调用者

- (void)myFirstFunction:(BOOL)selected numberOfBrothers:(int)brothers completion:(void (^)(void))completion

- (void)mySecondFunction
{
    NSLog(@"Enter in my Second function");
   [self myFirstFunction:true
        numberOfBrothers:1
        completion:^{
           NSLog(@"COMPLETION HANDLER");
        }];

}

- (void)myFirstFunction:(BOOL)selected numberOfBrothers:(int)brothers completion:(void (^)(void))completion
{
  NSLog(@"Enter in my First function");
}


谢谢

您的第一个函数没有调用完成

- (void)myFirstFunction:(BOOL)selected numberOfBrothers:(int)brothers completion:(void (^)(void))completion
{
     NSLog(@"Enter in my First function");
     completion();
}

也许myFirstFunction从未真正调用完成处理程序。很难说没有看到它的影子implementation@Scriptable对不起,我忘了在帖子中写第一个函数的实现。我编辑了这篇文章,现在你可以看到了。虽然不清楚,但在
myFirstFunction
实现中,你应该在某个时候完成
completion()谢谢!!它工作!!!我不知道函数是否需要调用完成处理程序。我觉得自己很愚蠢:)这!!