ios - 从 navigationController 访问推送的 Controller

标签 ios objective-c viewcontroller navigationcontroller

我尝试将一些属性从推送的 View Controller (Viewcontroller B) 设置到导航 Controller (Viewcontroller A) 堆栈中的前一个 View 。

然而,我尝试设置属性的对象(标题)在我设置其属性的那一刻是零。 (用断点检查)

ViewControllerB.m

 breapoint 1 -> ViewControllerA * missionVC = (ViewControllerA *) self.navigationController.viewControllers[n-2];



breakpoint 2 ->missionVC.header.title = companyName;
missionVC.header.subTitle = missionName;

[self.navigationController popViewControllerAnimated:YES];

在断点 1 处,missionVC 已正确初始化 header 对象,但在断点 2 处 missionVC.header 为 nil,我不知道为什么。

最佳答案

您正在创建先前 View Controller 的新对象。您应该将 Viewcontroller A 的引用传递给 B,然后设置 viewcontroller A 的值。您可以使用委托(delegate)来传递对象。

关于ios - 从 navigationController 访问推送的 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30937197/

相关文章:

objective-c - Obj-C iOS 删除 UITableViewCell

objective-c - 关于如何在 cocos2d 中制作排行榜和成就的任何教程

iphone - objective-c - 重大位置变化

iphone - viewController出现时出现黑色

swift - 如何从单独的 ViewController 刷新 ViewTable

ios - ARC - popviewController/DismissViewController

javascript - Canvas 上的触摸事件在 ipad/iOS10 上并不总是正确触发

ios - 未为约束准备 View 层次结构

ios - 如何在应用程序关闭时发送本地通知(快速)?

ios - 乌尔都语内容呈现不正确