如何访问主窗口尝试这个,但它对我不起作用:
if let app = UIApplication.shared.delegate as? AppDelegate, let window = app.window {
window.addSubview(offerView)
}
我也尝试过这种方式,但对我来说没有运气:
if let window = UIApplication.shared.windows.first {
window.addSubview(offerView)
}
注意:keyWindow
对我有用,但使用keyWindow
可以返回键盘或UIAlertView窗口,它位于我的应用程序窗口之上。
这是我发现的现有问题,但答案对我不起作用
How do I get the keyWindow reference in a swift app?
在我的应用程序上从页面底部显示一个商品视图。该优惠将显示在屏幕的一半
答案 0 :(得分:1)
let appDelegate = UIApplication.shared.delegate as? AppDelegate
let rootViewController = appDelegate?.window?.rootViewController
如果它是一个自定义类,你也可以施放rootViewController
。
let rootViewController = appDelegate?.window?.rootViewController as? YourCustomViewController
答案 1 :(得分:0)
最简单的解决方案是在window
中添加UIWindow
类型的属性变量AppDelegate
,并将rootviewcontroller
添加到该window
属性并访问该window
{1}}属性,无论您需要什么。