0

在目标 C/iOS 中;

我们有一个类似的过程(在 xcode 故事板中设置);

Menu View Controller -> Enter in a code -> Process/Validate -> Present a Failed Code page

(->) 箭头表示push情节提要中的 segue 设置

当处于失败状态时,我想弹出到Enter in a code视图控制器。

 UIViewController *vc = nil;

    NSUInteger index=0;
    for (UIViewController *viewController in self.navigationController.viewControllers) {
        if ([viewController isKindOfClass:[SomeViewController class]]) {
            vc = viewController;
            break;
        }
        index++;
    }

    if (vc) {
        dispatch_async(dispatch_get_main_queue(), ^(void) {
            [self.navigationController popToViewController:vc animated:YES];
        });
        return;
    }

这让我回到了我想去的 VC。

除了现在当我在页面上按下提交时,Enter code它会再执行 3 或 4 次“推送”,而它应该只有 1 次。

我需要解除segue吗?我尝试清空导航视图控制器堆栈,甚至尝试摆脱它的最后一个活动视图控制器——这两个都返回一个空白或黑色的窗口视图框架。

为什么在导航堆栈中弹出视图控制器会影响我的视图控制器中的 segues,以至于每当我尝试执行某个push segue操作时,它都会尝试将多个视图控制器推送到堆栈上?

4

1 回答 1

0

原来我有以下问题

按钮按下导致情节提要中的 segue 动作我在按钮上的代码中执行了相同的 segue 动作,因此多次按下

我现在已经解决了这个问题

于 2014-12-01T21:04:50.860 回答