XCode 4.1 — множественный просмотр в XIB

#iphone #xcode #viewcontroller

#iPhone #xcode #viewcontroller

Вопрос:

Я успешно создал приложение и предоставил ему контроллер представления панели вкладок, который работает так, как я надеялся, но столкнулся с сбоем.

На каждом xib, который я загружаю с панели вкладок, мне нужно создать вложенные представления, которые будут выполнять задачи, поскольку это взаимодействует с базой данных (или.. будет). Я создал свою первую страницу и кнопки, которые будут переходить к представлениям внутри XIB, но еще не знаю, как перемещаться между представлениями внутри самого XIB.

  1. было бы лучше иметь отдельные XIB, которые загружаются при нажатии кнопок? или
  2. должен ли я создавать представления в 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. следует отметить, что большинство элементов управления, которые я использовал, были заменены панелью вкладок по умолчанию и последующими встроенными представлениями навигации. единственная проблема, с которой я столкнулся, заключается в том, как перейти от представления «под» одной конкретной вкладкой на панели вкладок непосредственно к представлению «под» другим элементом панели вкладок напрямую.. без необходимости принудительного или модального «изменения» ..