Ios 以编程方式调用performsguewithidentifier不起任何作用

Ios 以编程方式调用performsguewithidentifier不起任何作用,ios,objective-c,iphone,Ios,Objective C,Iphone,我的处境和post一模一样,但无论出于什么原因,我的中只有一个能与identifier:sender一起工作 我有一个视图控制器(嵌入UINavigationController中),有两个按钮,取消和完成。单击“我希望取消”可将其展开到一个屏幕,单击“完成”可将其展开到另一个屏幕;但是,这只适用于我设置的两个Segue中的一个 - (IBAction)clickedDone:(id)sender { [self performSegueWithIdentifier:@"unwindTo

我的处境和post一模一样,但无论出于什么原因,我的
中只有一个能与identifier:sender
一起工作

我有一个视图控制器(嵌入UINavigationController中),有两个按钮,取消和完成。单击“我希望取消”可将其展开到一个屏幕,单击“完成”可将其展开到另一个屏幕;但是,这只适用于我设置的两个Segue中的一个

- (IBAction)clickedDone:(id)sender {
    [self performSegueWithIdentifier:@"unwindToHome" sender:self];
}

- (IBAction)clickedCancel:(id)sender {
    [self performSegueWithIdentifier:@"unwindToViewEntries" sender:self];
}
“unwindToHome”可以正常工作,而“unwindToViewEntries”则不起任何作用。没有错误,没有打印,什么都没有。如果我切换序列和按钮,“unwindToHome”仍将工作,而“unwindToViewEntries”则不起任何作用

我在两个要展开的ViewController中都有展开方法,并且没有附加到按钮的其他操作

我觉得只有一个能工作真的很奇怪。我已经看过好几次了,我看不出有什么不同

提前谢谢你的帮助。如果有更多的事情我应该检查,请让我知道

我已经研究了以下帖子的解决方案:

我还尝试过删除片段并重新添加它们,以及删除并重新添加整个视图控制器。每次都是一样的行为


编辑:我还应该提到,我曾尝试在不同的视图中添加其他分段,但我添加的新分段都不起作用。只有“unwindToHome”似乎有效,我不知道为什么。

在故事板中,确保两个片段都显示这是一个表演(推送)片段。前面有一个问题,有点不同,如果你从同一个按钮创建两个序列,Xcode会设置一个推另一个模式

快乐编码


Yan

您是否确保在界面生成器中输入了正确的标识符?是的,检查了几次。甚至尝试重新命名它们只是为了看看。没有什么变化。如果标识符错误,它将抛出异常。是否检查了
self.storyboard
的值?我不太确定在哪里检查,但单击“取消”或“完成”都是相同的值。您将segue的源设置为视图控制器,而不是按钮,我想……在这项工作完成后,我做了更多的搜索,找到了:,这可能是相关的。我觉得你应该能够提出任何数量的分段,你想作为一个模型没有问题的看法。就像我说的我可以做一个,但是第二个搞砸了。我现在将它们显示为弹出窗口,现在似乎已经解决了这个问题。谢谢你的帮助!我以为这只是xcode连接segues时的一个问题。我想这是iOS中的一个真正的bug。谢谢你的链接。非常有趣。祝你过得愉快!