Receiver没有标识符execption的segue

我有这个奇怪的问题,由于某种原因,我的segue不能正常工作。

我有两个segues设置,根据一个设置的状态确定它select的segue。 其中之一就像一个魅力,而另一个得到“接收器没有标识符的继续”

- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. // check if registered already if ([[NSUserDefaults standardUserDefaults] boolForKey:@"registered"] == YES) { // Registered // Give the logo some time to show before moving on [NSTimer scheduledTimerWithTimeInterval:4.0 target:self selector:@selector(splashLoadedRegistered:) userInfo:nil repeats:NO]; } else { // Register // Give the logo some time to show before moving on [NSTimer scheduledTimerWithTimeInterval:4.0 target:self selector:@selector(splashLoaded:) userInfo:nil repeats:NO]; } } -(void)splashLoaded:(id)sender { //This one works [self performSegueWithIdentifier:@"registerSegue" sender:self]; } -(void)splashLoadedRegistered:(id)sender { //This one does not work [self performSegueWithIdentifier:@"registeredSegue" sender:self]; } 

这是我的故事板的屏幕截图。

截图

注意事项:

  1. 我检查了segue的拼写。

  2. 这是应用程序中唯一的故事板,我已经检查过,以确保这是info.plist中的设置,以及项目的摘要。

  3. 我已经重置模拟器,并清理项目。

  4. segue来自ViewController,而不是View。

任何帮助,这是非常感谢。

我的问题没有答案。 这个问题似乎是在xcode中的一个简单的错误。 在模拟器中更换设备后,继续工作正常。 甚至在将其更改回出现问题的设备types后,它甚至可以工作。

基于原始的海报自己的答案 ,我重置模拟器的“内容和设置” 。 这解决了这个问题。

我理解,xCode优化了将应用程序的包复制到设备上,只是复制改变的东西。 我猜想这个东西出了问题,而不是把变化复制到受影响的故事板上。

我发现,如果你在源代码编辑器中打开故事板文件,你会看到segues被放置在错误的部分,它应该在视图控制器的连接部分。 Xcode 5有时会把这些segues放在XML树的错误位置。 用手编辑树。

尝试在StoryBoard和ViewController的手动执行中重命名你的segue。 有时它会发生,当你删除以前的同名的segue。 或者你创build了两个同名的赛段,然后删除其中的一个。

对我来说,我必须确保我的赛车走向正确的道路。 确保故事板编辑器中的所有箭头都以正确的方式stream动!