我想在任何其他视图(甚至导航栏)上方显示一种“弹出”视图,如下所示:
- 全屏黑色背景,alpha 为 0.5,可以看到其他内容
UIViewController
下。
- a
UIView
中间的窗口包含一些信息(如果您想了解一切,则可以使用日历)。
为此,我创建了一个包含两个的 UIViewControllerUIViews
(背景和窗口),我正在尝试显示它。我尝试过一个简单的[mySuperVC addSubview:myPopUpVC.view]
,但是上面还是有导航栏。
我试图将其呈现为模式,但是UIViewController
下面消失了,我失去了透明效果。
有什么想法可以做到这一点,我相信这很简单......
谢谢!
您可以通过将视图直接添加到 keyWindow 来做到这一点:
UIView *myView = /* <- Your custom view */;
UIWindow *currentWindow = [UIApplication sharedApplication].keyWindow;
[currentWindow addSubview:myView];
更新——适用于 Swift 4.1 及更高版本
let currentWindow: UIWindow? = UIApplication.shared.keyWindow
currentWindow?.addSubview(myView)
iOS13及以上版本更新
keyWindow
已弃用。您应该使用以下内容:
UIApplication.shared.windows.first(where: { $0.isKeyWindow })?.addSubview(myView)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)