当前位置:  开发笔记 > IOS > 正文

UIAlertView显示在KeyWindow的子视图下

如何解决《UIAlertView显示在KeyWindow的子视图下》经验,为你挑选了1个好方法。

我在keyWindow上添加了一个自定义视图.如何在自定义视图上显示UIAlertController?(现在警报只在我的自定义视图下弹出.)

let customView = CustomView()
UIApplication.sharedApplication().keyWindow!.addSubview(customView)

let alert = UIAlertController(title: NSLocalizedString("Error", comment: ""), message: "", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler: nil))
presentViewController(alert, animated: true, completion: nil)

Andrea.. 5

我认为如果你不直接向窗口添加视图会更好,这里有一些原因:

一个是您遇到的问题

如果要在目标上部署<= iOS7窗口不旋转,那么您可以在错误的位置找到叠加视图

要避免这种情况,如果您确实要添加自定义视图,请使用该rootViewController.view属性.

let customView = CustomView()
UIApplication.sharedApplication().keyWindow!.rootViewController.view.addSubview(customView)

我没有测试它,但自定义视图应该在警报下,因为它位于rootviewcontreller层次结构中.



1> Andrea..:

我认为如果你不直接向窗口添加视图会更好,这里有一些原因:

一个是您遇到的问题

如果要在目标上部署<= iOS7窗口不旋转,那么您可以在错误的位置找到叠加视图

要避免这种情况,如果您确实要添加自定义视图,请使用该rootViewController.view属性.

let customView = CustomView()
UIApplication.sharedApplication().keyWindow!.rootViewController.view.addSubview(customView)

我没有测试它,但自定义视图应该在警报下,因为它位于rootviewcontreller层次结构中.

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有