我有一个 UIViewController
,它的 View 被添加到我的 UIWindow
中。但是,如果我删除 View ,我将无法点击它所在位置下方的任何内容。我的代码如下:
-(void)createFullAd{
UIViewController *viewController = [UIViewController new];
self.fullAd = [MobclixFullScreenAdViewController new];
self.fullAd.delegate = self;
[self.fullAd requestAndDisplayAdFromViewController:viewController];
viewController.view.tag = 999999;
[[[[UIApplication sharedApplication] delegate]window] addSubview:viewController.view];
}
- (void)fullScreenAdViewControllerDidDismissAd:(MobclixFullScreenAdViewController*)fullScreenAdViewController{
NSLog(@"Dismissed");
[[[[[UIApplication sharedApplication] delegate] window] viewWithTag:999999]removeFromSuperview];
}
最佳答案
@dasblinkenlight 给了我这个想法,如果他回帖我会把答案奖励给他。
这很乱,但这是唯一有效的方法:
-(void)displayAd {
self.fullAd = [MobclixFullScreenAdViewController new];
self.fullAd.delegate = self;
self.adController = [UIViewController new];
[self.fullAd requestAndDisplayAdFromViewController:self.adController];
[[[[UIApplication sharedApplication] delegate]window] addSubview:self.adController.view];
}
- (void)fullScreenAdViewControllerDidDismissAd:(MobclixFullScreenAdViewController*)fullScreenAdViewController{
[fullScreenAdViewController.view removeFromSuperview];
[[[[UIApplication sharedApplication] delegate]window] setNeedsLayout];
self.adController = nil;
}
setNeedsLayout
是关键,但我在窗口而不是 adController 的 super View 上调用它。
关于iphone - 从 UIWindow 中删除 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10264851/