gpt4 book ai didi

iOS : Handle multiple uilocalnotification with multiple same viewcontroller

转载 作者:行者123 更新时间:2023-11-29 12:03:51 55 4
gpt4 key购买 nike

我正在使用 UILocalnotification...收到通知时,当应用程序处于事件模式时我打开 viewcontroller...但是如果同时收到多个通知...我如何打开多个 viewcontroller...以上彼此并依次解散它们....我尝试打开 viewcontroller 但收到此错误

Warning: Attempt to present <NotificationViewController: 0x7fc033b43900> on <UINavigationController: 0x7fc031859600> whose view is not in the window hierarchy!

最佳答案

有一个 hack 可以做到这一点。

编写 View Controller 的扩展:

extension UIViewController {
var lastPresentedViewController: UIViewController {
guard let presentedViewController = presentedViewController else { return self }
return presentedViewController.lastPresentedViewController()
}
}

或对象:

UIViewController+LastPresentedViewController.h:

@interface UIViewController (LastPresentedViewController)
-(UIViewController *)lastPresentedViewController;
@end

UIViewController+LastPresentedViewController.m:

@implementation UIViewController (LastPresentedViewController)
- (UIViewController *)lastPresentedViewController {
if (self.presentedViewController) {
return [self.presentedViewController lastPresentedViewController];
} else {
return self;
}
}
@end

当您需要从 navigationController 中呈现 View Controller 时,只需像这样调用此方法:

navigationController.lastPresentedViewController.presentViewController(....

如果您已经在 navigationController 中,只需调用 lastPresentedViewController.presentViewController(...

关于iOS : Handle multiple uilocalnotification with multiple same viewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35771051/

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