Опитвам се да постигна превключване на изгледи безкато използвам контролер за навигация, контролер на табулатор и т.н. Понастоящем изпълнявам това, като използвам Cocos2d class class replaceScene метод. Приложението ми ще трябва да има около 40 контролера за изглед, всеки с няколко UIButtons, които могат да ги отведат до всеки друг контролер на изгледи.
Например контролерът за преглед 1 може да има бутоникоито ви позволяват да видите контролер 2 View Controller 2 може да има бутони, които да се свързват към 3,4,5,12 контролерът на изгледа 4 може да се нуждае от свързване към контролера за преглед 17, 5 и 3
Всеки урок и малко документация, които съм чел, обсъжда само използването на навигационни контролери, ленти с табулатори или натискане на модално. Нито едно от тези решения не отговаря на конкретните ми изисквания.
Cocos2d има метода "replaceScene", който прави точно това, от което се нуждая, но смесването на многото UIKit контроли, от които се нуждая, прави космическия кошмар на целия този проект в Cocos2d.
Търся нещо, където мога да имампотребителят натисне бутон, който ще зареди определен изглед на контролера / преглед на изгледа към този изглед и ще освободи предишния контролер на изгледа от паметта. Някакви идеи?
Отговори:
1 за отговор № 1Имате контролер за коренно показване, който има препраткина вашите контролери за оглед. Също така направете слаба справка за контролера на коренния изглед във всеки контролер на изгледи, както при делегат. Ако някой от контролерите за преглед иска да направи преход към изгледа, изпратете съобщение до контролера за коренното показване. Позволете на контролера за коренно показване да скрие текущия изглед и да скрие следващия изглед, като използвате анимация, ако искате.
По принцип въвеждате контейнер за изгледимного по-прости от UINavigationController и UITabBarController. Вероятно бихте могли да постигнете едно и също нещо с помощта на контролера на лентата за табулация и да скриете изгледа на лентата с инструменти, но бих приложил обичаен.