ios – 不调用dismissViewControllerAnimated完成块

我试图解雇这样的视图控制器:
[composeViewController dismissViewControllerAnimated:YES completion:^{

    NSLog(@"Hello"); // Never outputted
}];

视图控制器被解除,但由于某种原因,永远不会调用完成块.

我没有遇到任何与其他视图控制器没有调用完成块的问题.

这个视图控制器是“特殊的”,因为它被添加为子视图控制器(我以前没有在我的应用程序中使用过).这是否会产生任何副作用,为什么不调用完成块?

它是这样添加的:

UIViewController *rootVC = [UIApplication sharedApplication].delegate.window.rootViewController;
[rootVC addChildViewController:self];
[rootVC.view addSubview:self.view];
[self didMoveToParentViewController:rootVC];

解决方法

找出问题所在:我使用的第三方视图控制器已被覆盖 – (void)dismissViewControllerAnimated:(BOOL)标志完成:(void(^)(void))完成而没有实际调用completion()

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...