2012-06-18 5 views
0

Я думаю, что, должно быть, мне не хватает чего-то простого здесь, но я не могу понять, что это.segue не распознает идентификатор 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); 

} 

здесь выход из консоли:

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 

Это не и я не могу понять, почему. realllly bugging me

любые идеи?

Спасибо!

ответ

5

Сравнение строк с использованием isEqualToString:, а не ==. Последний проверяет равенство указателя, первое - на то, действительно ли строки являются одной и той же строкой.

if ([segue.identifier isEqualToString: @"createBuildSegue"]) 
Смежные вопросы