UISwipeGestureRecognizer 滑动距离

Posted

技术标签:

【中文标题】UISwipeGestureRecognizer 滑动距离【英文标题】:UISwipeGestureRecognizer Swipe Distance 【发布时间】:2010-06-25 05:31:08 【问题描述】:

是否有一种简单的方法可以延长滑动在被识别之前必须经过的距离。似乎默认值真的很短。这不仅仅是一个水龙头,但只是勉强。我是否需要创建自定义手势识别器来覆盖此距离?

谢谢。

【问题讨论】:

来自文档:滑动可慢可快。慢速滑动需要高方向精度但距离小;快速滑动需要低方向精度但距离大。只是指出这一点。 【参考方案1】:

没有要设置的记录属性意味着没有要设置的记录属性。不过,您可以创建自己的手势识别器。


有 7 个 undocumented 属性可以更改默认行为:

@interface UISwipeGestureRecognizer()
@property(assign, nonatomic) CGFloat minimumPrimaryMovement;
@property(assign, nonatomic) CGFloat maximumPrimaryMovement;
@property(assign, nonatomic) CGFloat minimumSecondaryMovement;
@property(assign, nonatomic) CGFloat maximumSecondaryMovement;
@property(assign, nonatomic) NSTimeInterval maximumDuration;
@property(assign, nonatomic) float rateOfMinimumMovementDecay;
@property(assign, nonatomic) float rateOfMaximumMovementDecay;
@end

但如果您为 AppStore 编写,则不能使用这些。

【讨论】:

我不会使用私有 API,但您的回答很有帮助。谢谢。 我试图显示这些值以查看默认值。但我得到奇怪的价值观。你成功了吗?我的代码: NSLog (@"minimumPrimaryMovement : %f, maximumPrimaryMovement %f, minimumSecondaryMovement %f, maximumSecondaryMovement %f, maximumDuration %f, [swipeRecognizer minimumPrimaryMovement], [swipeRecognizer maximumPrimaryMovement], [swipeRecognizer minimumSecondaryMovement], [swipeRecognizer maximumSecondaryMovement最大持续时间]);

以上是关于UISwipeGestureRecognizer 滑动距离的主要内容,如果未能解决你的问题,请参考以下文章

识别用户剪切/滑动手势 (UISwipeGestureRecognizer)

UISwipeGestureRecognizer 滑动长度

UISwipeGestureRecognizer 只有一个方向工作

如何检测 UISwipeGestureRecognizer 的结束?

如何使 UISwipeGestureRecognizer 在 UIScrollView 中工作

UISwipeGestureRecognizer 没有触发