【发布时间】:2014-10-07 07:35:12
【问题描述】:
这是一种非常奇怪的行为,我不知道出了什么问题。在 iOS7 中,以下代码按预期工作,但在 iOS 8 中,它有一个奇怪的行为。
UIView *mainPopupView = [[UIView alloc] initWithFrame:CGRectMake(10, ([UIScreen mainScreen].bounds.size.height-300)/2-50+20, 300, 380)];
mainPopupView.backgroundColor = [UIColor whiteColor];
[self.view addSubview:mainPopupView];
在 iOS7 中,这些代码在当前视图控制器中添加了一个白色的 mainPopupView,一切正常。但是在iOS8中,mainPopupView出现后,mainPopupView后面会出现一个黑屏(就像一个带有Black blackgroundColor的UIView)。 IMO 关于 addSubview: 方法有一些变化,我在 Google 上尝试了各种搜索但没有结果。请任何人向我解释为什么会发生这种情况以及如何解决它?
提前致谢。
【问题讨论】:
-
很抱歉我没有正确描述它。 mainPopupView 是self.view 的一个子视图,而这个“self”是一个视图控制器,假设类名是PopupViewController。在另一个控制器中,我使用 [self presentViewController:ppvc animated:NO completion:nil] (ppvc 是 PopupViewController 的一个实例),黑色背景在显示 ppvc 后的 mainPopupView 后面。在 ios7 中,不显示黑色背景视图。那么问题出在哪里:(
标签: ios objective-c ios8 addsubview