
概述我有一个视图是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所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)