我现在正在制作数字漫画。 我的应用程序在不缩放时具有水平分页。 但是当缩放时,图片的高度超过了屏幕的高度。 所以应用程序具有垂直分页。
但我不需要垂直分页。 我想在缩放期间进行水平分页而不进行垂直分页。
请教我。
最佳答案
这真的很简单。正如您的 friend 所建议的,您至少需要两个 UIScrollView
。您将需要一个 UIScrollView
用于水平(即分页),并且您将需要一个 UIScrollView
用于每个页面。关键点是(让我们将它们命名为 scrollHorizontal
和 scrollVertical
):
scrollHorizontal.frame.height
必须等于scrollHorizontal.contentSize.height
(否则,您最终将得到垂直分页)scrollVertical
:首先,每个页面都会有一个。框架宽度和contentSize.width
应匹配且有意义。页面的宽度(在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.
关于iphone - UIScrollView中如何实现水平分页而不垂直分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3015709/