我尝试将一些属性从推送的 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/