Ste*_*tic 55 cocoa-touch uipagecontrol ios uipageviewcontroller ios7
我想做一件非常简单的事情.只需删除所有点,以及UIPageViewController底部的栏.
这是设置:我有一个自定义视图控制器,它有UIPageViewController*pageController我显示如下:
self.pageController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageController.dataSource = self;
[[self.pageController view] setFrame:[self.view bounds]];
BSItemPageViewController *initialViewController = [self viewControllerAtIndex:selectedIndex];
NSArray *viewControllers = [NSArray arrayWithObject:initialViewController];
[self.pageController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil];
[self addChildViewController:self.pageController];
[[self view] addSubview:[self.pageController view]];
[self.pageController didMoveToParentViewController:self];
Run Code Online (Sandbox Code Playgroud)
关于如何删除点的任何想法?
jrt*_*ton 200
仅当数据源实现这些方法时,才会显示页面控件:
presentationCountForPageViewController:
presentationIndexForPageViewController:
Run Code Online (Sandbox Code Playgroud)
只需删除这些实现,就不会显示页面控件.从数据源文档:
如果实现了"支持页面指示符"中的两个方法,并且页面视图控制器的转换样式为UIPageViewControllerTransitionStyleScroll,则页面指示符可见.
mts*_*mts 11
在我的情况下,我有多个UIPageViewControllers(从 - [UITableView didSelectRowAtIndexPath]创建),其中一些只包含1页.我没有为不同的UITableView行使用不同的控制器,而是按如下方式实现了UIPageViewController委托方法:
- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController {
return ([self numberOfPages] == 1 ? 0 : [self numberOfPages]);
}
Run Code Online (Sandbox Code Playgroud)
如果只有1页似乎使UIPageViewController不显示点,则返回0.它是一个kludge但它似乎工作(iOS SDK 7.0).
我想一种"更干净"的方法是在运行时为那些只有1页的UIPageControllers删除方法,但这会涉及一些花哨的objC运行时操作.
对这种方法的评论?
| 归档时间: |
|
| 查看次数: |
31769 次 |
| 最近记录: |