Bad*_*Cat 7 cocoa-touch ios uipageviewcontroller
我正在尝试使用UIPageViewController界面生成器创建一个页面浏览器,它允许显示相邻页面的一部分(也就是窥视).我一直在http://www.appcoda.com/uipageviewcontroller-storyboard-tutorial/上关注一个教程(并将其移植到Swift中)这很简单,但我无法弄清楚要做什么改变UIPageViewController中显示的页面小于屏幕(并居中),并且相邻页面部分显示在屏幕左右两侧.
我试图在IB中调整页面内容视图控制器的大小并使用代码,但页面视图控制器仍将填满整个屏幕.
有没有人知道涵盖此功能的教程或什么是获得所需效果的好方法?
以下来自Bamboo Paper的截图显示了我正在努力实现的目标......

就像@davew所说,偷看意见需要使用UIScrollView.我也搜索了一种使用方法,UIPageViewController但找不到任何资源.
使用UIScrollView这个功能并不像我想象的那么痛苦.

首先:make a UIViewController,然后在viewDidLoad方法中添加以下代码:
float pad = 20;
NSArray* items = @[@"One", @"Two", @"Three", @"Four"];
self.view.backgroundColor = [UIColor greenColor];
UIScrollView* pageScrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];
pageScrollView.opaque = NO;
pageScrollView.showsHorizontalScrollIndicator = NO;
pageScrollView.clipsToBounds = NO;
pageScrollView.pagingEnabled = YES;
adjustFrame(pageScrollView, pad, deviceH()/4, -pad*3, -deviceH()/2);
[self.view addSubview: pageScrollView];
float w = pageScrollView.frame.size.width;
for(int i = 0; i < [items count]; i++){
UIView* view = [[UIView alloc] initWithFrame:pageScrollView.bounds];
view.backgroundColor = [UIColor blueColor];
setFrameX(view, (i*w)+pad);
setFrameW(view, w-(pad*1));
[pageScrollView addSubview:view];
}
pageScrollView.contentSize = CGSizeMake(w*[items count], pageScrollView.frame.size.height);
Run Code Online (Sandbox Code Playgroud)
仅供参考,我使用这些util函数来调整视图框的大小; 我厌倦了用3行代码手动更改它们.
我已将此代码包装在一个简单的ViewController中,并将其放在GitHub上
https://github.com/kjantzer/peek-page-view-controller
它绝不是完整的,但它是一个有效的开始.
| 归档时间: |
|
| 查看次数: |
3449 次 |
| 最近记录: |