Как создать пейджинг в iOS 7
Я хотел бы воссоздать макет приложения, фотографии которого приведены ниже. В верхней части находится панель навигации с постраничным контентом в середине. Я рассмотрел несколько способов того, как разместить содержимое страницы, включая UIScrollViews, UIPageControl и PageViewControllers, но я не могу воссоздать этот макет. Большинство учебных пособий, которые я нахожу, также не обновляются для iOS7. Весь вклад с благодарностью.
Фотографий:
3 ответа
Вот несколько ресурсов, которые помогут вам начать.
В документации Apple есть очень хороший пример того, как реализовать представление прокрутки с помощью UIPageViewController
см. пример кода PhotoScroller здесь. Я бы предложил начать там.
У меня также есть некоторый код на github, который изменяет пример Apple PhotoScroller для загрузки UIPageViewController
внутри UIViewController
подкласс.
Это хорошее руководство от команды Ray Wenderlich о том, как настроить просмотр прокрутки на странице: Как использовать UIScrollView для прокрутки и масштабирования контента
Я также ответил на несколько других вопросов о просмотрах прокрутки страниц, которые могут оказаться полезными. Смотрите здесь, здесь, здесь и здесь.
Просто установите переменную экземпляра int, изначально установленную в 0. Если не имеет значения, используете ли вы.xibs или раскадровку, концепция остается прежней. Если вы хотите выложить абсолютно все в IB, посмотрите здесь: Как добавить объекты в UIScrollView, которые выходят за пределы UIView из раскадровки?
Чтобы узнать, когда произошла подкачка, используйте это:
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
CGFloat pageWidth = self.scrollview.bounds.size.width;
curIndex = floor((self.scrollview.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
if (curIndex == lastIndex) return;
lastIndex = curIndex;
//increment pager and do whatever else...
}
Вот отличное руководство по созданию постраничного scrollView!
И кстати, в iOS7 нет ничего особенного по этому поводу. По крайней мере, я ничего не могу придумать.