【发布时间】:2012-10-28 15:25:44
【问题描述】:
问题
我正在开发一个iOS 应用程序,我有 3 个连续的ViewControllers:
TableViewController --> DetailViewController --> ImageViewController
我使用一个按钮执行 de forward Segue(只需控制拖动 Storyboard)然后返回我有一个自定义的后退按钮
[self.navigationController popViewControllerAnimated:YES];
为了向前发送数据,我使用
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
[segue.destinationViewController someFunction];
}
要向父级ViewController 发送数据,我可以在DetailViewController 中使用prepareForSegue,但它在ImageViewController 中不起作用,我必须使用Notifications。
如果我用prepareForSegue用popViewControllerAnimated发送数据可以吗?
我应该在这两种情况下都使用通知吗?
一些代码
我在DetailViewController 中有一个按钮,它执行到 ImageViewController 的 Segue(只需控制在 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];
}
}
我注意到我无法将 segue.identifier 分配给 popViewController 操作。
【问题讨论】:
标签: iphone ios xcode uistoryboardsegue