使用UIPanGestureRecognizer滑动到新的视图控制器

时间:2014-04-04 21:54:16

标签: ios iphone objective-c ios7

我正在尝试为我的应用添加欢迎屏幕,您可以“滑动解锁”。 Potluck应用程序的想法非常简单。用户基本上会滑动视图,当他们滑动时,他们将看到他们正在滑动的视图下方的下一个视图。当它们滑过某一点时,它会进入下一个视图。我正在尝试使用UIPanGestureRecognizer执行此操作。我假设我需要找到用户拖出屏幕的距离,我不知道该怎么做。感谢。

我发现了我试图通过gif在线实现的效果: https://d262ilb51hltx0.cloudfront.net/max/800/1*tKuXa5qf4aSwuSnv05uqxQ.gif

1 个答案:

答案 0 :(得分:0)

您可以使用UIDynamicAnimator和UIDynamicBehaviors来获得逼真的结果。虽然它们仅适用于iOS 7.

设置UIGravityBehavior以将视图拉向正确的方向。 然后创建一个UICollisionBehavior来阻止顶视图从屏幕上掉下来。 平移手势开始时,移除重力并将UIAttachmentBehavior附加到顶视图的中心。平移移动时,移动附件以拖动顶视图。释放平移手势时,使用UIPanGestureRecognizer在视图中获取速度。使用UIPushBehavior为视图提供该速度的方向。然后在适当的方向上重新施加重力。

希望有所帮助!