Создание пользовательских контроллеров представления на основе UIScrollViewController для iPad - PullRequest
0 голосов
/ 29 сентября 2010

Я смотрю на приложение E * TRADE для iPad (видимое на http://www.apple.com/ipad/apps-for-ipad/#etrade) и задаюсь вопросом, как им удается создать «карусель контроллеров представления». Очевидно, что под крышками есть UIViewController ... после этого я совершенно теряюсь.

Это в значительной степени UITableView на его стороне.

Есть ли какой-нибудь пример кода или проектов, на которые кто-то может указать мне?

Ваши подсказки и другие советы приветствуются

М.

Ответы [ 2 ]

1 голос
/ 30 сентября 2010

Похоже, что приложение выполняется с двумя (верхним и нижним) подкачками UIScrollViewControllers, которые содержат разные представления.

Как это работает, создав scrollView, включив подкачку и задав для contentSize подходящее значение(т. е. ширина представления * количество просмотров + (View Padding * количество просмотров))

Вот классическая конфигурация для UIScrollView для включения подкачки:

scrollView.pagingEnabled = YES;
    scrollView.contentSize = CGSizeMake(x,y);
    scrollView.showsHorizontalScrollIndicator = NO;
    scrollView.showsVerticalScrollIndicator = NO;
    scrollView.scrollsToTop = NO;
    scrollView.delegate = self;

Здесь - некоторая документация.

0 голосов
/ 29 сентября 2010

Мне кажется, это вполне выполнимо, это, конечно, Model-View-Controller на всем пути.

У них есть один viewController, который находится на самом верху иерархии.К этому контроллеру они добавляют ряд других представлений viewControllers, ScrollViewController, LittleStockViewController и т. Д. И т. Д. Все viewControllers получают свои данные из модели, которая обновляется с данными, т. Е. При изменении выбора в LittleStockViewer изменения моделивсе просмотры обновляются.Я не думаю, что это сильно отличается по архитектуре, скажем, от просмотра изображений.

Попробуйте взглянуть на составной шаблон, вот как я бы это сделал, реализовав что-то вроде - (void) update;метод и общий интерфейс / протокол для всех детей.

Удачи с ним:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...