Sea*_*ser 0 xcode ios uistoryboard uistoryboardsegue
我想我必须在这里遗漏一些简单但我无法弄清楚它是什么.
我必须支持来自同一个viewcontroller的多个segue,所以很自然我想使用segue标识符.我的代码由于某种原因不起作用,让我举个例子:
此代码如下:
-(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);
}
Run Code Online (Sandbox Code Playgroud)
这是控制台的输出:
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
Run Code Online (Sandbox Code Playgroud)
这不起作用,我无法弄清楚为什么.真是烦我
有任何想法吗?
谢谢!
比较字符串使用isEqualToString:,而不是==.后者检查指针是否相等,前者检查字符串是否实际上是相同的字符串.
if ([segue.identifier isEqualToString: @"createBuildSegue"])
Run Code Online (Sandbox Code Playgroud)