我希望在iPhone / iPad应用程序中创建一个小轮子。我知道你可以通过继承UIGestureRecognizer来编写你自己的识别器。有没有人知道如何(主要是背后的数学原理)创建一个可以检测圆周运动的程序,也许可以结合摇摄手势?
谢谢
发布于 2010-07-21 09:32:46
这个问题并不容易。我花了一些时间思考一个可能的解决方案:
我认为你需要的是一些你必须设置的关键属性:
现在你有了这样的东西(不幸的是,我没有足够的名气,所以只有链接:http://img17.imageshack.us/img17/4416/bildschirmfoto20100721u.png
现在,这背后的数学开始了:
首先,你要把走廊分成四个部分:
对于每个季度,你必须计算出手指何时移动(假设0°线从中心点直到顶部):
如果手指在第一个四分之一,你知道,如果x向左移动,旋转方向一定是逆时针的。,,
将此逻辑应用于所有季度。现在,您知道慢跑轮是顺时针还是逆时针移动。你必须确保手指永远不会离开走廊(如果你测试了这一逻辑,并且因为离开走廊而停止了移动,请将走廊变大-感谢CrystalSkull的评论:使用44px作为走廊的最小宽度,以应用于人机接口指南)。
Sumary
因此,现在您可以得出结论,您需要一个中心点和一个可以移动手指的走廊。你必须找出手指在哪个季度,并找出(使用x值)是顺时针旋转还是逆时针旋转。
我希望这对你有一点帮助。
https://stackoverflow.com/questions/3186273
复制相似问题