问题
我正在开发一个iOS
应用程序,我有 3 个连续ViewControllers
:
TableViewController
--> DetailViewController
-->ImageViewController
我用一个按钮(只需控制拖动Storyboard
)执行 de forward Segue 并返回我有一个自定义的后退按钮
[self.navigationController popViewControllerAnimated:YES];
要转发数据,我使用
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
[segue.destinationViewController someFunction];
}
要将数据发送给ViewController
我可以在 中使用prepareForSegue
的父级DetailViewController
,但它在 中不起作用,ImageViewController
我必须使用Notifications
.
如果我prepareForSegue
用来发送数据可以popViewControllerAnimated
吗?
我应该在这两种情况下都使用通知吗?
一些代码
我有DetailViewController
一个按钮,它执行 Segue 到 ImageViewController (只是控制拖动Storyboard
)和一个后退按钮:
- (IBAction)backAction:(id)sender {
[self.navigationController popViewControllerAnimated:YES];
}
然后是函数:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if([segue.identifier isEqualToString:@"forwardSegue"]) {
[segue.destinationViewController someFuntionToImageViewController];
} else {
[segue.destinationViewController someFuntionToParentViewController];
}
}
我注意到我无法为popViewController
操作分配 segue.identifier。