展开或关闭视图控制器不工作。 Xcode 6.4

时间:2015-09-15 04:20:54

标签: objective-c unwind-segue xcode6.4

我一直试图让推动的视图控制器解除,或者在确认操作发生后再返回一个。我在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,这可能仍是一个问题,我需要使用不同的解决方法吗?

无论如何,任何帮助都会很棒

由于

1 个答案:

答案 0 :(得分:0)

我使用布拉德利这个非常有用且清晰的github解决了这个问题。

https://github.com/bradley/iOSUnwindSegueProgramatically

基本上我没有在我返回的viewcontroller上创建以下类型的方法,但在我试图退出的那个内部: - /现在全部清除谢谢。

- (IBAction)returnToStepOne:(UIStoryboardSegue *)segue {
    NSLog(@"And now we are back.");
}