标签: uipageviewcontroller

UIPageViewController - 如何跳转到特定的页码?

我花了将近8个小时来了解如何跳转到UIPageViewController中的特定页码...下面是我的项目看起来像

我想制作一个看起来像Ibooks的应用---

我已经从这里提供的代码中获得了帮助 - http://www.ioslearner.com/tag/uipageviewcontroller-sample-code/

我已经制作了一个plist和UITableView,我从TableView中选择了值并在UIPAgeiewController上放置的webView上显示相同,但​​问题是只有Web视图中的页面发生了变化,而不是UIPageViewController的实际页面编号....

如果我缩小我的问题,它看起来像---是否有办法在UIPageViewController中切换页码....

cocoa-touch objective-c ios uipageviewcontroller

14
推荐指数
2
解决办法
2万
查看次数

如果快速刷卡,UIPageViewController didFinishAnimating不会被调用

我有一个按预期工作的UIPageViewController.我可以向左和向右滚动,didFinishAnimating当我滚动每个方向时调用委托方法.但是,如果我滚动太快,我最终会在didFinishAnimating未调用的页面上,尽管它会被调用所有以前的页面.有谁知道为什么会发生这种情况?

我认为didFinishAnimating无论如何都会在每次页面转换时调用(例如,即使转弯中止).

cocoa-touch objective-c ios uipageviewcontroller

14
推荐指数
1
解决办法
3286
查看次数

使用UIPageViewController并使视图看起来像是在拍打

我想知道是否有一种方法可以动画第一个视图,UIPageViewController以便它看起来像一个页面角落有点晃动?当你第一次到达这个特定的屏幕时,好像有一阵微风拂过页面.

这可以添加某种UI功能,以指示可以刷屏幕.我们正在显示的内容UIPageViewController并不像书本那样占据整个屏幕,但是想让用户更清楚他们可以使用手势来横向导航.

任何的意见都将会有帮助.

iphone ios uipageviewcontroller

13
推荐指数
1
解决办法
1257
查看次数

预加载UIPageViewController的页面

我找不到一个很好的解决方案让UIPageViewController预加载周围的ViewControllers.

现在发生的事情是当用户开始翻页时,没有任何反应,代码调用

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController
       viewControllerAfterViewController:(UIViewController *)viewController
Run Code Online (Sandbox Code Playgroud)

一旦它加载然后它就会显示动画.这需要太长时间并且不顺畅.

有人有解决方案吗?

iphone ios uipageviewcontroller

13
推荐指数
1
解决办法
1万
查看次数

滚动样式UIPageViewController中的多个可见页面

所以我要做的是拥有一个UIPageViewController,它最终将显示三个视图控制器视图,一个完全可见,然后两个作为左右预览.一个例子是iOS6 App Store:

iOS6 App Store

是否使用UIPageViewController设置为 UIPageViewControllerTransitionStyleScroll可能?

基本上我理想的情况是,我可以拥有三个UIViewControllers,我通过列表中的1-项目回收用户页面(n至少为50).我知道一个行为类似的接口可以使用带有分页启用的UIScrollView来完成,但重新使用视图会占用一些视图,如果Apple已经为我做了,我宁愿不写.

顺便说一下,我对这个仅适用于iOS6的事实感到非常自在,并且如果它们存在的话,也会对替代品感到满意.

谢谢!

ios uipageviewcontroller ios6

13
推荐指数
1
解决办法
2501
查看次数

UIPageViewController没有调整其子视图控制器的大小

我有一个以编程方式设置的视图控制器,它有一个孩子UIPageViewController.这将显示也以编程方式设置的各种其他视图控制器.这些视图控制器的视图已translatesAutoresizingMaskIntoConstraints设置为YES,但页面视图控制器的视图使用约束将自身定位在顶视图控制器中.

问题是,当用户旋转设备时,页面视图控制器会调整其框架的大小,但其子视图控制器不会.通过didRotateFromInterfaceOrientation,它的框架仍然是旧的方向.我已经验证了在子视图控制器上调用旋转方法,它们的框架不会改变.

我设置了这样的页面视图控制器:

self.pageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageViewController.view.backgroundColor = [UIColor clearColor];
self.pageViewController.view.translatesAutoresizingMaskIntoConstraints = NO;
self.pageViewController.dataSource = self;
self.pageViewController.delegate = self;
[self.pageViewController willMoveToParentViewController:self];
[self.view addSubview:self.pageViewController.view];
[self addChildViewController:self.pageViewController];
[self.pageViewController didMoveToParentViewController:self];

self.currentPageIndex = 0;

self.currentPageController = [self pageForIndex:self.currentPageIndex];
self.currentPageController.delegate = self;
[self.pageViewController setViewControllers:@[self.currentPageController] direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:NULL];
Run Code Online (Sandbox Code Playgroud)

我试过调用,setNeedsLayout但这是一个笨拙的旋转动画,我刷到的下一页也没有正确调整大小.

为什么页面视图控制器没有调整其子视图控制器的大小,我该如何让它执行此操作?

谢谢!

constraints ios auto-rotation uipageviewcontroller autolayout

13
推荐指数
2
解决办法
3255
查看次数

如何删除UIPageViewController的底部间隙

我正在使用UIPageViewController来全屏显示图像,UIViewController被添加到UIPageController作为子视图/子图像使用ImageView显示图像.问题是图像没有全屏显示,而是页面控制视图的底部显示在底部并且该空间完全被浪费.请查看附件中的图片.

在此输入图像描述

这是代码

self.pageController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];

self.pageController.dataSource = self;
[[self.pageController view] setFrame:[[self view] bounds]];

NewsItemViewController *initialViewController = [self viewControllerAtIndex:0];

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)

这里NewsItemViewController是UIViewController,显示图像和一些文本,MainViewController在MainViewController中实现UIPageViewControllerDataSource协议和必要的方法.

我相信必须有一种方法可以全屏显示.

***如果重要的话,MainViewController也是故事板的一部分.

objective-c ios uipageviewcontroller

13
推荐指数
4
解决办法
2万
查看次数

如何为UIPageViewController启用Voice Over 3手指滑动手势

我在我的应用程序中使用UIPageViewController,但是我注意到启用Voice Over时,"三指滑动"快捷方式不起作用(就像在主屏幕上一样).有没有人知道是否有一种标准的方法来实现这一点(像大多数其他VO功能一样)?或者我是否需要自己手动检测滑动手势.

iphone ios voiceover uipageviewcontroller

13
推荐指数
1
解决办法
1607
查看次数

UIPageViewController中的断言失败

我在UIPageViewController中有一个断言失败.

Assertion failure in -[UIPageViewController _flushViewController:animated:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3512.60.12/UIPageViewController.m
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason:
'Don't know about flushed view <UIView: 0x15a5bff30; frame = (0 0; 768 903); autoresize = W+H; layer = <CALayer: 0x15a5bfc30>>'
*** First throw call stack:
(0x181ebedb0 0x181523f80 0x181ebec80 0x182844154 0x1877a1c40 0x1877a1da8 0x18784e9c4 0x18784ebfc 0x187852318 0x18784dd98 0x1870101e4 0x1849a2994 0x18499d5d0 0x1870270a4 0x10028b620 0x100348b78 0x100379f54 0x100168878 0x18733d568 0x1870330b4 0x1870f1a00 0x18733e71c 0x1870f832c 0x18703536c 0x18700f7ac 0x18700ed40 0x18700eba8 0x1873283b4 0x18700d5e8 0x18784ebd4 0x187852318 0x18784df3c 0x1871db550 0x1871daf6c 0x101c9b768 0x1849f0234 0x1849f00e8 0x182135e54 0x181e5d030 0x181e757d4 …
Run Code Online (Sandbox Code Playgroud)

uiviewcontroller uikit uiview ios uipageviewcontroller

13
推荐指数
2
解决办法
3735
查看次数

UIPageViewController中的UIButton交互

我在我的应用程序中使用UIPageViewController,我想在其中有一些UIButtons,有点像菜单.我遇到的问题是,当我在屏幕边缘附近放置UIButton(或任何其他交互元素)并点击它时,而不是应用UIButton操作,会发生什么变化,页面会发生变化(因为边缘点击屏幕更改UIPageViewController上的页面).我想知道是否有办法使UIButton具有比UIPageViewController更高的优先级,这样当我点击按钮时,它会应用相应的操作而不是更改页面.

iphone xcode objective-c uipageviewcontroller

12
推荐指数
1
解决办法
6118
查看次数