使用Objective-C使用手指拖动时垂直滑动xib

时间:2015-03-24 13:05:48

标签: ios objective-c iphone uiview slide

我有一个主视图(当前显示的视图)。

将AnotherView添加为滚动视图的子视图。此AnotherView的初始位置必须使得另一个视图的底部出现在MainView的最顶部。

现在,当我向下拖动AnotherView的底部部分时,AnotherView应该以我拖动它的速度从上到下显示为SLIDING。

当我停止拖动时,滑动也应停止。

如果我在屏幕的一半后松开拖动,滑动应继续到屏幕的底部。

我怎么能实现这个目标?

1 个答案:

答案 0 :(得分:0)

您应该使用UIPanGestureRecognizer。 AnotherView应该在main之前,或者在UIGestureRecognizerStateBegan的Pan Recogniser的函数中放在前面。 如果UIGestureRecognizerStateChanged相应地更改另一个View框架此移动。您可以通过返回CGPoint的[panRecognizer translationInView:self.view]进行移动。并检查另一个视图是否已经在屏幕的一半之后。如果您通过屏幕的一半,只需使用animateWithDuration完成UIGestureRecognizerStateEnded上的移动。 所以另一个视图不需要在scrollview中。

据我所知,你想做一些类似于滑出菜单的东西。 http://www.raywenderlich.com/32054/how-to-create-a-slide-out-navigation-like-facebook-and-path 在那里,您可以找到如何使用平移识别器通过拖动来滑动视图的示例。