每个UIViewController,以rootViewController开头,使用[self.navigationController pushViewController nextView]来推送新视图。滑动工作正常。
如何向前滑动实现相同的行为?我更确切地说,如何在弹出后退或后退按钮后保持UIViewController,所以我可以再次添加它以防止向前滑动?
答案 0 :(得分:5)
要跟踪视图控制器,您可以执行以下操作:
将实例变量(作为强属性)nextViewController
添加到所有视图控制器
每当您按下新的视图控制器时,将nextViewController
设置为推送的视图控制器
现在,只要用户向前滑动,您只需按nextViewController
即可。但是,首先检查nil
。如果currentViewController.nextViewController = nil
您知道用户从未导航过这一点,并且您处理得当。您可以忽略向前滑动,也可以向用户发送消息。
要处理滑动本身:
只需将UISwipeGestureRecognizer添加到每个视图控制器的view
。
然后,当您调整滑动方法时,请检查手势识别器的direction
属性。如果是向前滑动,请按上述方法推送nextViewController
。