gpt4 book ai didi

ios - 获取对 iOS 中顶级 View Controller 的引用

转载 作者:行者123 更新时间:2023-12-01 18:26:26 24 4
gpt4 key购买 nike

如何在我的应用程序中获取对顶部可见 View Controller 的引用。我看到了一些使用navigationcontroller.[top|visible]viewcontroller 的解决方案。但我不在我的应用程序中使用导航 Controller 。

这似乎是一个非常常见的用例,我发现很难访问 top|visible View Controller 很奇怪

最佳答案

这也应该遵循您的模态视图和导航 Controller (如果有):

- (UIViewController *)deepestPresentedViewControllerOf:(UIViewController *)viewController
{
if (viewController.presentedViewController) {
return [self deepestPresentedViewControllerOf:viewController.presentedViewController];
} else {
return viewController;
}
}

- (UIViewController *)topViewController
{
UIViewController *rootViewController = [[[UIApplication sharedApplication] keyWindow] rootViewController];
UIViewController *deepestPresentedViewController = [self deepestPresentedViewControllerOf:rootViewController];
if ([deepestPresentedViewController isKindOfClass:[UINavigationController class]]) {
return ((UINavigationController *)deepestPresentedViewController).topViewController;
} else {
return deepestPresentedViewController;
}
}

关于ios - 获取对 iOS 中顶级 View Controller 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13374209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com