【发布时间】:2012-03-08 20:56:06
【问题描述】:
我正在尝试创建一种新的旋转控件,其外观和感觉就像一个真正的大轮子支撑在一个销钉上,能够在一定程度的阻尼下围绕它的中心点旋转,这最终会使轮子停下来。 想想“命运之轮”。
当使用原生 UITableView 和/或 UIScrollView 时,它们可以在一个方向上“轻弹”并继续在该方向上滚动一段时间。我知道动画曲线可以达到类似的效果。
我感兴趣的是如何根据手指移动的距离/速度计算界面元素应滚动/旋转的距离。不同类型的“轻弹”会通过将“动量”传递到轮子来产生不同的行为。任何人都可以提出这种计算的例子吗?
我对将相同的惯性概念应用到此处描述的自定义旋转控件特别感兴趣:Rotary control on stack overflow。当前的示例,甚至示例中提到的 convertbot 应用程序都没有使用惯性。滚轮简单地跟随手指并捕捉到预定义的位置。我想让一个类似的轮子感觉它有真正的质量,所以它可以轻弹并以可预测的方式旋转,直到平稳停止。 (想想“命运之轮”类型的节目)。
我怎样才能为旋转控件实现这种基于惯性的“命运之轮”行为,让控件感觉它具有真正的质量?
谢谢!
【问题讨论】:
标签: iphone objective-c ios animation rotation