gpt4 book ai didi

xcode - 如何使用 Storyboard 在 AppDelegate 中使用自定义 Navigationcontroller

转载 作者:行者123 更新时间:2023-12-04 17:03:17 26 4
gpt4 key购买 nike

我在 AppDelegate 中遇到了关于 Navigationcontroller 的问题。我正在使用一个 Storyboard,它看起来像这样:

Storyboard

由于使用推送通知,我的 AppDelegate 文件中有以下功能:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
//...
}

当通知到达时,我想初始化需要一个 ID 作为参数的“详细 View ”- Controller 。此 ID 是我的有效负载的一部分,因此它存在于 didReceiveRemoteNotification 中.

我想以下:
DetailView *detail = [storyboard instantiateViewControllerWithIdentifier:@"detail"];

detail.conversationID = theID;

[self.navigationController pushViewController:detail animated:YES];

我现在的问题是:我怎样才能获得导航 Controller ?我搜索了像“getNavigationControllerByIdentifier”之类的函数或类似的东西,但一无所获。我无法直接实例化 Detail View Controller,因为那里缺少导航栏。

我希望你明白我的意思——如果你认为我的方法完全错误,请纠正我;o)

还有一个小信息:细节 View Controller 中的后退按钮返回到表 View 对我来说并不重要 - 当它通过按钮“加载表 View ”链接到 Controller 时就足够了。

谢谢你的帮助!

最佳答案

UINavigationControllerUIViewController子类,也可以在 Storyboard中分配一个标识符。

使用 -instantiateViewControllerWithIdentifier:创建 UINavigationController它是根 View Controller 。您可能需要在代码中实例化所有中间 Controller 并修改导航 Controller 的 viewControllers属性来设置适当的导航堆栈。通过这种方式,当应用程序启动到详细信息 View 时,他们可以找到返回的路,就好像他们已经通过界面手动一直推过去一样。

关于xcode - 如何使用 Storyboard 在 AppDelegate 中使用自定义 Navigationcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8779808/

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