【发布时间】:2016-05-31 20:25:19
【问题描述】:
我试图在顶部放置一个UIView - popupView,在 popupView 下方放置另一个 UIView (opaqueView),但高于其他任何东西。 PopUpView 与 Outlet 相连。
func display() {
popupView.center = CGPointMake(CGRectGetMidX(self.view.bounds), tableView.center.y);
self.view.addSubview(popupView)
popupView.clipsToBounds = true
let opaqueView = UIView()
let screenSize: CGRect = UIScreen.mainScreen().bounds
opaqueView.frame.size = CGSize(width: screenSize.width, height: screenSize.height)
opaqueView.alpha = 0.6
UIApplication.sharedApplication().keyWindow!.insertSubview(opaqueView, belowSubview: popupView)
}
使用这种方法会导致 opaqueView 被放置在包括 popupView 在内的所有内容上。相反,我希望将 popupView 放在 opaqueView 之上,但将 opaqueView 放在其他一切之上 (view, TabBar, NavBar)
【问题讨论】:
-
为什么将
popupView添加到self.view而将opaqueView添加到keyWindow? -
因为,如果我不将
opaqueView添加到keyWindow,opaqueView不会超过 TabBar 和 NavigationBar。 -
为什么不将 popupView 也添加到 keyWindow 中?
-
这就是答案。非常感谢!
标签: ios swift uiview addsubview