Это действительно просто. Как предложил ваш друг, вам понадобится ПОСЛЕДНИЕ два UIScrollView
. Вам понадобится один UIScrollView
для горизонтальной (например, подкачки), и вам понадобится один UIScrollView
для на странице. Ключевые точки (назовем их scrollHorizontal
и scrollVertical
):
scrollHorizontal.frame.height
должна равняться scrollHorizontal.contentSize.height
(в противном случае, вы будете в конечном итоге с вертикальной пейджинга)
scrollVertical
: во-первых, вы будете иметь один из этого для каждой страницы , Ширина рамки и contentSize.width
должны соответствовать и иметь смысл w.r.t. ширину страницы (в вашем scrollHorizontal
). Разумеется, вы должны иметь высоту кадра не более scrollHorizontal.contentSize.height
.
Пример кода:
UIScrollView scrollHorizontal = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
scrollHorizontal.pagingEnabled = YES;
scrollHorizontal.directionalLockEnabled = YES; // not needed but helpful
// Now let's create each page
UIScrollView *scrollPage1 = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
[scrollPage1 addSubview:theContentViewForPage1];
scrollPage1.contentSize = CGSizeMake(self.view.bounds.size.width, theContentViewForPage1.bounds.size.height);
// Add page to scrollHorizontal
[scrollHorizontal addSubview:scrollPage1];
[scrollPage1 release];
//...add more pages (REMEMBER to set the scroll view's frame.origin.x accordingly for each additional page)
// Set the scrollHoriztonal content size
scrollView.contentSize = CGSizeMake(self.view.bounds.size.width*NUMBER_OF_PAGES, self.view.bounds.size.height);
// Now add the scrollview to self.view; or even self.view = scrollHorizontal, etc.
Может быть сделано с точки зрения один свиток: http://stackoverflow.com/questions/10478586/uiscrollview-paging-in-single-direction/10480071#10480071 –