Как лучше всего перенести приложение книги, которое использует один UIViewController для обработки всех страниц в виде UIViews, в StoryBoarding и UIPageView? - PullRequest
0 голосов
/ 20 февраля 2012

У меня есть книжное приложение, которое имеет около 30 страниц, каждая из которых представляет собой UIView в одном UIViewController.Я хочу перенести это в приложение, которое использует StoryBoarding и UIPageViews.Похоже, что каждая из «страниц» в UIPageView должна быть UIViewController, а не UIView.Что будет лучшим способом добиться этого?Нужно ли создавать UIViewController из каждой страницы UIView?

Ответы [ 2 ]

1 голос
/ 06 марта 2012

Да. Перепишите все свои подклассы UIView как подклассы UIViewController. Я сделал это с несколькими моими проектами, и это оказалось немного утомительным. Для моих проектов мне было проще всего создать новый проект Xcode и построить новую инфраструктуру. Затем создайте новые UIViewController классы для каждого из моих старых UIView классов. Затем я скопировал и вставил большую часть кода из старых UIView классов в новые UIViewController классы. Я сильно изменил self на self.view. Жизненный цикл UIViewController немного сложнее, чем UIView, поэтому я переместил некоторый код инициализации из назначенного инициализатора в методы viewDidLoad и viewWillAppear в моих подклассах UIViewController.

Ответ на комментарий: В моих приложениях многие страницы имеют уникальные интерактивные функции, поэтому я пишу уникальный подкласс UIViewController для управления этими функциями. Некоторые страницы будут иметь одинаковые функции, но разный контент. Они будут просто использовать несколько экземпляров одного UIViewController подкласса. Мой объект модели создаст эти подклассы UIViewController и наполнит их соответствующим содержимым.

Другими словами, нет необходимости писать новый UIViewController подкласс для каждой страницы. Только столько, сколько у вас есть уникальная функциональность на странице. Если ваша страница ничего не делает, вы можете просто использовать UIViewController без подклассов.

0 голосов
/ 07 марта 2012

Оформить Пример приложения iOS 5 для iPhone UIPageViewController статья.В этой главе будет дан краткий обзор концепций, лежащих в основе контроллера просмотра страниц, и пример приложения, предназначенного для демонстрации этого класса в действии.

...