我一直试图让推动的视图控制器解除,或者在确认操作发生后再返回一个。我在stackoverflow中读了很多关于这个主题的帖子(我之前从未这样做过),例如: How to perform Unwind segue programmatically?
但是有一些问题。首先,从视图控制器到退出的ctrl拖动,虽然这似乎是Xcode 6中的一个错误但是没有工作,所以我按照建议添加了以下解决方法并来回更改了类:
@interface RequestLessonViewController ()
- (IBAction)unwindToMyViewController: (UIStoryboardSegue *)segue;
@end
这允许我将“操作”按钮中的segue添加到“退出”。我当然也给了它一个标识符(unwindSegue
)。
然后我在我的按钮代码中添加了performWithSegueWithIdentifie
r行,如下所示:
- (IBAction)requestLessonAction:(UIButton *)sender {
// PUT CONFIRM POP UP IN HERE ???
NSLog(@"ADD A LESSON REQUEST TO LESSONS DATABASE");
UIAlertView *confRequest = [[UIAlertView alloc] initWithTitle:@"Lesson Request Submitted"
message:@"Congratulations"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[confRequest show];
[self performSegueWithIdentifier:@"unwindSegue" sender:self];
}
然而,我的放松仍然没有开始。
由于xcode 6.4
,这可能仍是一个问题,我需要使用不同的解决方法吗?
无论如何,任何帮助都会很棒
由于
答案 0 :(得分:0)
我使用布拉德利这个非常有用且清晰的github解决了这个问题。
https://github.com/bradley/iOSUnwindSegueProgramatically
基本上我没有在我返回的viewcontroller上创建以下类型的方法,但在我试图退出的那个内部: - /现在全部清除谢谢。
- (IBAction)returnToStepOne:(UIStoryboardSegue *)segue {
NSLog(@"And now we are back.");
}