我正在使用启用分页的 UIScrollView。我的代码基于PageControl 示例。
UIScrollView 中的页面彼此靠近。但是我需要在页面之间添加一些空间(例如在您浏览相机胶卷中的照片时)。有没有办法在页面之间添加一些水平缩进?
我正在使用启用分页的 UIScrollView。我的代码基于PageControl 示例。
UIScrollView 中的页面彼此靠近。但是我需要在页面之间添加一些空间(例如在您浏览相机胶卷中的照片时)。有没有办法在页面之间添加一些水平缩进?
您必须使 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 选项。
找到PhoneContentController.mloadScrollViewWithPage:(int)page
中的方法,看看这一行:
frame.origin.x = frame.size.width * page;
它通过内容的宽度*页面的数量来设置滚动视图中内容框架的x位置。因此,如果您想在内容之间添加排水沟,您可以执行以下操作:
int xOffset = 20;
frame.origin.x = (frame.size.width * page) + xOffset;