iphone – 如何找到根UIViewController

iphone – 如何找到根UIViewController,第1张

概述我有一个视图是UIViewController(root)处理广告和UINavigationController。在UINavigationController我有典型的控制器层。在我的自定义设置表视图控制器中,我有一个按钮来联系我以获得支持。当用户点击这个按钮我创建一个MFMailComposeViewController,并希望提出它。我无法在设置表视图中显示它,因为它会在我的广告下方,因此我 我有一个视图是UIVIEwController(root)处理广告和UINavigationController。在UINavigationController我有典型的控制器层。在我的自定义设置表视图控制器中,我有一个按钮来联系我以获得支持。当用户点击这个按钮我创建一个MFMailComposeVIEwController,并希望提出它。我无法在设置表视图中显示它,因为它会在我的广告下方,因此我需要引用根视图并从中显示它。我试过self.parentVIEwController.parentVIEwController其中self是设置表视图,但这不工作。我应该如何参考。看起来像一个糟糕的设计,必须直接引用根视图,并将其传递到设置视图。解决方法 获取当前的keyWindow:

UIWindow *window = [UIApplication sharedApplication].keyWindow;

获取它的rootVIEwController:

UIVIEwController *rootVIEwController = window.rootVIEwController;

注意:如果当前正在显示UIAlertVIEw,则会创建一个新窗口并将其指定为keyWindow。也可能有其他特殊情况,也不会保持你的应用程序窗口是keyWindow。

总结

以上是内存溢出为你收集整理的iphone – 如何找到根UIViewController全部内容,希望文章能够帮你解决iphone – 如何找到根UIViewController所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1087428.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存