2015-11-16 7 views
1

Я хотел иметь отдельные файлы раскадровки для каждого UIViewcontrollers в моем приложении iOS.Перемещение между несколькими раскадными версиями в приложении iOS

Итак, как мы можем назначить разные раскадровки для каждого контроллера? Также как мы делаем навигацию между ними?

Это я делаю, чтобы избежать конфликтов svn, когда так много людей работают в пользовательском интерфейсе.

+0

Вот ссылка, которая может помочь http://spin.atomicobject.com/2014/02/18/ios-storyboards -xcode5/ – humblePilgrim

ответ

-1

Сохранение различных раскадровки для разных модулей - хороший подход. Вы можете достичь навигации между раскадровки следующим образом: -

Предположим, вы находитесь в контроллере представления и хотят столкнуть другой контроллер представления имени FabIdeaDetailViewController, который присутствует в раскадровке имени FabIdeas: -

FabIdeaDetailViewController *horizontalListController = (FabIdeaDetailViewController*)[UIViewController instantiateViewControllerWithIdentifier:@"FabIdeaDetailViewController" fromStoryboard:@"FabIdeas"]; 
[self.navigationController pushViewController:horizontalListController animated:YES]; 

Теперь для толкания другой контроллер представления имени WishlistViewController, который присутствует в раскадровке имени Wishlist: -

UIViewController *WishlistViewController = [UIViewController instantiateViewControllerWithIdentifier:@"WishlistViewController" fromStoryboard:@"Wishlist"]; 
[self.navigationController pushViewController:WishlistViewController animated:YES]; 
+0

метод '[UIViewController instantiateViewControllerWithIdentifier: @" FabIdeaDetailViewController "fromStoryboard: @" FabIdeas "]' не существует. –

0

получить ссылку на раскадровку ...

UIStoryboard *someStoryboard = [UIStoryboard storyboardWithName:@"NameOfYourStoryboard" bundle:nil]; 

затем экземпляр либо начальный ViewController из этого видеоредактора ...

UIViewController *initialViewController = [someStoryboard instantiateInitialViewController]; 

или какой-либо другой ViewController идентифицируются это раскадровка идентификатор ...

UIViewController *someOtherViewControllerFromTheStoryboard = [someStoryboard instantiateViewControllerWithIdentifier:@"SomeViewControllersStoryboardIdentifier"]; 

после этого вы можете просто push (внутри навигационного контроллера) или представить новый диспетчер представлений.

так прошивка 9.0 вы можете даже подключить раскадровки через раскадровку ссылки в самом раскадровки: https://developer.apple.com/library/prerelease/ios/recipes/xcode_help-IB_storyboard/Chapters/AddSBReference.html

Смежные вопросы