gpt4 book ai didi

ios - 使用数据初始化 ViewController 并以编程方式将其显示到屏幕

转载 作者:行者123 更新时间:2023-11-29 00:17:08 25 4
gpt4 key购买 nike

我的 iOS 应用程序的 Storyboard包含一个带有根 ViewController 的 NavigationController。从辅助 View Controller ,我想以编程方式显示根 VC,并在顶部显示附加的 NavigationController,同时用一些数据实例化根 VC。

到目前为止,我在辅助 View Controller 中有以下内容:

UINavigationController* nav = [[UIStoryboard storyboardWithName:@"Storyboard" bundle:nil] instantiateViewControllerWithIdentifier:@"NavController"];
UIViewController* viewController = [[UIStoryboard storyboardWithName:@"Storyboard" bundle:nil] instantiateViewControllerWithIdentifier:@"RootVC"];
viewController.data = @"My test data";

[self presentViewController:nav animated:YES completion:nil];

根 VC 成功显示顶部的导航栏,但是当我在根 VC 逻辑中打印以下内容时,它显示为空:

 NSLog(@"Initialized data: %@", self.data); // null

我该如何解决这个问题?似乎初始化数据不是来自辅助 Controller 。

最佳答案

您正在创建一个新的 UIViewcontroller 实例,它具有标识符“RootVC”并为其分配数据。

相反,您应该将数据分配给导航 Controller 的 rootViewController,如下所示:

self.navigationController.viewControllers.firstObject.data = @"My test data";

这是同一个类的不同实例的问题。

关于ios - 使用数据初始化 ViewController 并以编程方式将其显示到屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45094700/

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