- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我遇到了 UIPageViewController 的一个非常奇怪的行为。
我正在使用 UIPageViewController 显示一组 ViewController,因此我遵循 UIPageViewControllerDataSource 协议(protocol),并实现了以下方法:
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(NHBufferRoomViewController *)viewController
{
NSLog(@"Got here!!");
NSInteger newIndex = [_imageManager currentImageIdx] + 1;
if (newIndex >= [_imageManager count]) return nil;
NSLog(@"%d", newIndex);
NHBufferRoomViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"BufferRoom"];
[controller updateImageAtIndex:newIndex];
[[NSNotificationCenter defaultCenter] postNotificationName:kCurrentImageIndex object:[NSNumber numberWithInteger:newIndex]];
return controller;
}
但是当我滑动页面 View Controller 时,有时 View Controller 确实移动到下一页,但是 NSLog(@"Got here!!");
直到我才被调用再次滑动,这很奇怪。据我了解,页面 View Controller 应该在需要显示新页面时调用此方法,对吗?但是为什么没有调用该方法?
顺便说一句,我正在将过渡类型设置为滚动。提前致谢!
最佳答案
是的,你是对的。它的问题是苹果的 api。
解决方案:不要使用 UIPageViewController,而是通过带分页的 UIScrollView 实现它
关于ios - viewControllerAfterViewController : does not get called with UIPageViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20533162/
我有一个 UIPageViewController,我设置了一个数组作为数据源。我看到第一页很好,演示文稿计数点显示正确,但是当我尝试将 拖到下一页时,没有任何反应。因此,我在 viewControl
我设置了 UIPageViewController 的 dataSource 属性,但它的函数从未被调用,并且 View 是空的(黑色)。 如果我使用以下方法至少设置了第一页,一切正常,并且调用了数据
我知道这可能是重复的,但我尝试了在网上找到的其他解决方案,但似乎都没有解决我的问题。 我有一个 pageViewController,它显示 4 个 UIViewController。首先滚动 pag
我遇到了 UIPageViewController 的一个非常奇怪的行为。 我正在使用 UIPageViewController 显示一组 ViewController,因此我遵循 UIPageVie
我正在尝试实现 UIPageViewController 并在每一步都进行验证。我的代码在没有验证的情况下工作正常,所以页面上的所有内容似乎都是正确的。这是我的代码: - (UIViewControl
我是一名优秀的程序员,十分优秀!