Для навигации iOS 5 между контроллерами представления класс UIViewController предоставляет селектор [self performSegueWithIdentifier:@"MySegue" sender:sender].Предположительно, под капотом реализация раскадровки знает список идентификаторов segue, исходящих из любого контроллера представления, т.е. [@"MySegue", @"MySegue2"].Есть ли способ получить доступ к этому списку программным путем, чтобы получить идентификаторы, которые можно передать в executeSegueWithIdentifier?
UIViewController
[self performSegueWithIdentifier:@"MySegue" sender:sender]
[@"MySegue", @"MySegue2"]
Это недокументированное поведение, но
NSArray *segueTemplates = [self valueForKey:@"storyboardSegueTemplates"] ;
должно возвращать массив, который включает все возможные значения перехода, которые могут быть переданы в performSegueWithIdentifier.
performSegueWithIdentifier
Нет общедоступного API для перечисления сегментов в раскадровке.
Сохраните все segue, относящиеся к контроллеру представления, в массиве и затем получите доступ к этому массиву в контроллере представления.
segue