0

我正在使用启用分页的 UIScrollView。我的代码基于PageControl 示例

UIScrollView 中的页面彼此靠近。但是我需要在页面之间添加一些空间(例如在您浏览相机胶卷中的照片时)。有没有办法在页面之间添加一些水平缩进?

4

2 回答 2

0

您必须使 scrollView 的框架更宽,以便它向屏幕的左侧和右侧延伸 gap/2 个像素。

CGFloat gap = 20.0; //20 pixels spacing between pages
CGRect frame = self.view.frame;
frame.size.width += gap;
frame.origin.x -= gap/2;
scrollView.frame = frame;

然后你像正常一样添加内容视图控制器,居中并填充屏幕,因此请确保将它们正确偏移 gap/2 inloadScrollViewWithPage:

编辑:如果您仅针对 iOS 6,则可以使用 UIPageViewController 和 UIPageViewControllerTransitionStyleScroll 并使用 UIPageViewControllerOptionInterPageSpacingKey 选项。

于 2013-01-06T12:42:28.583 回答
0

找到PhoneContentController.mloadScrollViewWithPage:(int)page中的方法,看看这一行:

frame.origin.x = frame.size.width * page;

它通过内容的宽度*页面的数量来设置滚动视图中内容框架的x位置。因此,如果您想在内容之间添加排水沟,您可以执行以下操作:

int xOffset = 20;
frame.origin.x = (frame.size.width * page) + xOffset;
于 2013-01-06T12:34:52.640 回答