#iphone #xcode #viewcontroller
#iPhone #xcode #viewcontroller
Вопрос:
Я успешно создал приложение и предоставил ему контроллер представления панели вкладок, который работает так, как я надеялся, но столкнулся с сбоем.
На каждом xib, который я загружаю с панели вкладок, мне нужно создать вложенные представления, которые будут выполнять задачи, поскольку это взаимодействует с базой данных (или.. будет). Я создал свою первую страницу и кнопки, которые будут переходить к представлениям внутри XIB, но еще не знаю, как перемещаться между представлениями внутри самого XIB.
- было бы лучше иметь отдельные XIB, которые загружаются при нажатии кнопок? или
- должен ли я создавать представления в XIB для каждой категории и переключаться между ними?
Я все еще учусь, и у меня возникла некоторая путаница в отношении навигации, поскольку у меня уже есть панель вкладок, управляющая корнем приложения. Я искал учебные пособия, но все они, похоже, начинаются с любого контроллера навигации в качестве корневого, панели вкладок в качестве корневого, и ничего подобного мне не нужно для варианта 1 выше.
При необходимости я могу добавить подробную информацию о приложении, но пока я ищу рекомендации.
Спасибо,
Серебряный тигр
Комментарии:
1. лучше иметь несколько XIBS, так как вы можете не захотеть смешивать разные представления.
Ответ №1:
Для навигации между представлениями лучше всего использовать навигационный контроллер, который нажимает / выталкивает отдельные контроллеры просмотра, загруженные из отдельных nibs. UINavigationController является подклассом UIViewController, поэтому вы можете идеально разместить контроллер навигации для каждой вкладки. Вы также можете использовать storyboarding в новом xcode 4.2, но я рекомендую освоиться с этим, прежде чем делать это.
Комментарии:
1. хех .. все новое для меня, поэтому мне придется много читать. Я начал с онлайн-уроков по настройке приложения на основе окон и получению моих 5 основных представлений с помощью панели вкладок. возможно ли иметь UINavigationController внутри каждого, если мои 5 категорий XIB (уже работают под панелью вкладок), чтобы я мог переключаться между представлениями на них или я должен отказаться от панели вкладок и начать все сначалаNavigatioController?
2. Да, у вас может быть UINavigationController для каждой вкладки (в MainWindow.xib, под контроллером панели вкладок, у вас должны быть контроллеры просмотра, замените их контроллерами навигации, добавьте, установите корневой контроллер каждого навигационного контроллера в качестве контроллера просмотра, который вы хотите).
3. что ж.. обновление до 4.2 я могу создавать Storyoard только в том случае, если хочу ограничить свою платформу ios 5.0 или выше: (… но создание проектов немного изменилось, поэтому есть приложение с вкладками», которое дает мне хорошее начало .. но теперь нет главного окна.xib .. начать все сначала и прочитать больше — это план дня…
4. Как бы я сделал это программно? Когда я создаю приложение с вкладками в XCode 4.2 и указываю что-либо, кроме ios5, я не получаю файл mainwindow.xib…..
5. следует отметить, что большинство элементов управления, которые я использовал, были заменены панелью вкладок по умолчанию и последующими встроенными представлениями навигации. единственная проблема, с которой я столкнулся, заключается в том, как перейти от представления «под» одной конкретной вкладкой на панели вкладок непосредственно к представлению «под» другим элементом панели вкладок напрямую.. без необходимости принудительного или модального «изменения» ..