相关疑难解决方法(0)

在ios6中,将pageViewController的gestureRecognizers委托设置为viewController会导致崩溃

这只是在ios6上开始发生,但是如果你使用页面视图控制器模板启动一个新项目.然后进去

PCRootViewControlle::viewDidLoad()
Run Code Online (Sandbox Code Playgroud)

将行添加到方法的底部.

for (UIGestureRecognizer *gR in self.pageViewController.gestureRecognizers)
{
    gR.delegate = self;
}
Run Code Online (Sandbox Code Playgroud)

您需要分配viewController以使其符合UIGestureRecognizerDelegate并实现该方法

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch (UITouch *)touch
{
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

现在,如果您运行应用程序并尝试将页面超出界限,即转到1月并尝试返回

  • (UIViewController*)pageViewController:(UIPageViewController*)pageViewController viewControllerBeforeViewController:(UIViewController*)viewController

返回零.

该应用程序将崩溃.

ios5没有发生这种情况.我需要将gestureRecognizer委托分配给我的viewController,因为我并不总是希望pageViewController处理触摸事件.

有没有其他人经历过这个或指出如果我做错了什么?

非常感谢斯图尔特.

xcode objective-c ios ios6

8
推荐指数
2
解决办法
6343
查看次数

标签 统计

ios ×1

ios6 ×1

objective-c ×1

xcode ×1