Swift:以编程方式模拟泛手势

标签 swift animation gesture pan

<分区>

我有一个用平移手势动画的动画。当手势识别器状态改变时,动画继续(它是图像的旋转)。

现在我想在教程中向用户展示他必须向上或向下平移/滑动才能显示动画。

有没有办法“模拟”泛手势的平移和速度,以便执行一次动画?动画逻辑基于泛手势平移。

最佳答案

Cocoa Touch 中没有内置任何东西可以为您执行此操作,但您可以构建自己的系统。

实现此目的的一种方法是定义您自己的 UIPanGestureRecognizer 子类,RecordingPanGestureRecognizer,并构建它,使其表现得像一个普通的手势识别器,但也会保存带时间戳的历史记录它对其操作目标进行的所有调用。这可以通过使用正常的目标- Action 机制来瞄准两个对象来完成。您可以将通话记录保存到文件中。

然后,还构建一个 Player 类型,它可以读取该记录并重播一组类似的目标 Action 事件。

使用此系统,您可以手动记录手势并稍后重放。这是我工作的应用程序中使用的方法,效果很好。

关于Swift:以编程方式模拟泛手势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47679191/

相关文章:

objective-c - 如何实现触摸相机图标时在 iOS 锁定屏幕中看到的行为?

listview - 禁用 ListView 的横向滑动选择

iphone - UIPinchGestureRecognizer 没有响应

wpf - 如何动画窗口?

ios - 我的 iOS 应用程序经常崩溃 [UIGestureRecognizer _delegateShouldReceiveTouch :] of pan gesture

swift - 为什么\t 不应用于该字符串?

arrays - 通过对其他两个数组的所有元素应用二元运算在 Swift 中创建一个数组

ios - 执行许多地理编码请求的策略

iphone - CABasicAnimation 没有为我的属性(property)设置动画

ios - 如何在 xcode 中创建动画过渡屏幕