【问题标题】:segue not recognizing segue identifiersegue 无法识别 segue 标识符
【发布时间】:2012-06-20 02:25:33
【问题描述】:

我想我一定是遗漏了一些简单的东西,但我不知道是什么。

我必须支持来自同一个视图控制器的多个转场,所以我自然想使用转场标识符。我的代码由于某种原因无法正常工作,让我举个例子:

这段代码如下:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

    NSString *segueID = @"createBuildSegue";

    if (segue.identifier == @"createBuildSegue") {
        UINavigationController *navController = segue.destinationViewController;
        CreateBuildTableViewController *rootController = [navController.viewControllers objectAtIndex:0];
        [rootController setOptionsDictionary:[[DataManager sharedDataManager]optionsDictionary]];

        NSLog(@"Worked");
    }
    NSLog(@"segue identifier = %@", segue.identifier);
    NSLog(@"segueID = %@", segueID);

}

这是控制台的输出:

2012-06-17 22:32:06.921 RubiconMobile[26943:f803] segue identifier = createBuildSegue
2012-06-17 22:32:06.922 RubiconMobile[26943:f803] segueID = createBuildSegue

这不起作用,我不知道为什么。真的很烦我

有什么想法吗?

谢谢!

【问题讨论】:

    标签: ios xcode uistoryboard uistoryboardsegue


    【解决方案1】:

    使用isEqualToString: 比较字符串,而不是==。后者检查指针是否相等,前者检查字符串是否实际上是相同的字符串。

    if ([segue.identifier isEqualToString: @"createBuildSegue"])
    

    【讨论】:

      猜你喜欢
      • 2018-02-25
      • 1970-01-01
      • 2016-09-12
      • 1970-01-01
      • 2020-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多