ios - 当我们使用Objective-C使用手指拖动时xib的垂直滑动

标签 ios objective-c iphone uiview slide

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

另一个 View 作为 subview 添加到 ScrollView 中。此另一个 View 的初始位置必须使此另一个 View 的底部出现在主视图的最顶部。

现在,当我向下拖动另一个 View 的底部时,另一个 View 应该以我拖动它的速度从上到下显示为滑动。

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

如果我在半屏后释放拖动,滑动应该继续到屏幕底部。

我怎么能做到这一点?

最佳答案

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

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

关于ios - 当我们使用Objective-C使用手指拖动时xib的垂直滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29233442/

相关文章:

iphone - 类别,协议(protocol),一大类?我应该在这里使用什么

ios - 从 AppDelegate 中的 NSMutableDictionary 清除几个推送通知

iOS 7 蓝牙输出不适用于 AVAudioSessionCategoryPlayAndRecord

ios - UICollectionView 重叠单元格

iOS 设备未使用 GDAsyncUdpSocket 接收 UDP 多播

ios - iOS 中有没有办法接收钥匙串(keychain)条目已更改的通知?

ios - Objective-C UIImage 凹角(又名自定义进度条)

objective-c - 使用 AFNetworking 发布请求 Amazon S3

ios - 在 managedObjectContext 中查找特定对象并计算总和

iphone - 如何从 AVCaptureSession 产生的 CMSampleBuffer 中获取 Y 分量?