0

我有一个问题在iOS6上已经解决了,但是如果我使用iOS 5.1模拟器仍然会出现。

我有一个基于默认页面的应用程序。我添加了一个“主菜单”视图控制器,它具有三个按钮,通过 push segue 激活包含页面的根视图控制器,所有这些都在情节提要中定义。

然后我添加了一个导航控制器并将其作为初始视图控制器。

如果我通过一个按钮传递菜单并翻几页,我可以单击后退按钮并返回菜单。好的。

但我不想要导航栏,所以我隐藏它,并在包含页面视图控制器的根视图控制器上添加一个执行此操作的按钮:

[self.navigationController popToRootViewControllerAnimated:YES];

这个按钮在iOS6上完美运行,我可以翻几页,按下按钮,我又回到了菜单中。

然而,使用 iOS 5.1 模拟器(以及在我的 5.1 iPad 上),会发生翻页!这是一个翻页,直到我在最后一页,然后我回到菜单。

我现在搜索了两个多小时,但找不到解决方案,我希望有人能帮我解决这个问题吗?

注意:将动画设置为 NO 并不能解决问题。

4

1 回答 1

0

我确实找到了我的问题的答案,这是我的第一个 iOS 项目,它解释了为什么我自己没有尽快找到它。

在基于默认页面的应用程序中,viewDidLoad 方法中有两行:

// 将页面视图控制器的手势识别器添加到书本视图控制器的视图中,以便更轻松地启动手势
self.view.gestureRecognizers = self.pageViewController.gestureRecognizers;

首先,它不是真正添加而是分配发生在这里,其次,当我将第二行放在评论中时,一切都按预期工作。

所以我很高兴它解决了我的问题,但是它提出了一些问题:

  1. 手势开始时很容易,那么为什么首先需要这条线,它应该解决什么问题?
  2. 为什么它可以在 iOS6 中运行?它应该有同样的问题,不是吗?
  3. 它是分配而不是添加是否正确?

仍然感谢这三个的任何答案。

亚历克斯

于 2012-10-17T09:05:12.917 回答