而不是缩放,我认为通常会使用捏合手势,我只是想检测是否捏是捏捏,因此我可以折叠或扩展一些表格部分。我该怎么做呢?
答案 0 :(得分:10)
对于捏合手势,“scale”属性小于1,对于捏放,大于1。 这种情况发生在所有2个手指的夹点上。
我还观察到,如果我用5个手指捏住(这是最小化到家的快捷方式),每次缩放值恰好为1.0。但是我所知道的任何Apple文档都不支持这一点。
您可以通过简单地将NSLog放入捏合处理选择器
来试验这些值NSLog(@"Scale: %.2f | Velocity: %.2f",pinch.scale,pinch.velocity);
答案 1 :(得分:7)
嗯,这似乎很容易。 UIPinchGestureRecognizer
类只有两个属性,scale
和velocity
。似乎合乎逻辑的是,负scale
意味着向内捏,正向scale
向外捏。
注意:“否定”可能会产生误导。 “较小”为0.0 < scale < 1.0
,“较大”为scale > 1.0
。
答案 2 :(得分:2)
你看看scale属性是正确的,但它会在1左右切换,而不是零。
- (BOOL) pinchWasOutwards:(UIGestureRecognizer *)gestureRecognizer { return gestureRecognizer.scale > 1; }