【问题标题】:Best way to animate a spinning wheel thats responsive to touch events为响应触摸事件的旋转轮设置动画的最佳方式
【发布时间】:2010-12-13 17:04:30
【问题描述】:

我需要朝着正确的方向前进。 我想构建一个旋转轮控件,用户可以在其中选择一个元素。

我想完成以下工作:

  1. 接收将根据 touchesMoved 中的手指位置旋转滚轮的触摸事件
  2. 通过时放大所选图像指示器内的图像。

我正在考虑一个核心动画 Basic Animation 和动画旋转。 使用动画组并旋转它。

问题 1: 如何将动画与触摸事件同步。

问题 2: 我如何知道哪个图像是我需要放大的图像,例如 CGAffineTransformMakeScale。

我的问题是否有最佳实践。特别是。考虑到性能?

http://img24.imageshack.us/img24/8596/imagezy.png

【问题讨论】:

  • 您好,您可以在其中找到实现此目的的良好做法。如果您能提供一些指导,我将不胜感激。谢谢

标签: iphone ipad core-animation quartz-graphics


【解决方案1】:

您可以通过为每个 touchmoved 事件更新滚轮来实现此目的。

对于每个 touchmoved、touchbegin 事件,您可以知道从滚轮中心到手指的线的角度。您保存开始角度,然后您将知道差异角度。轮子是否可以旋转取决于您的手指使用角度。

您可以通过这两种方式之一放大图像图标。 1.您可以知道所有轮子中的哪个图像图标角度,并且您还可以知道轮子的当前角度。所以,如果图像图标在直角之间。前任。如果滚轮在 45 度,则 -45 或 360-45 度的图标将被放大。 2.检查每个图像图标的y原点,如果图像图标原点y高于阈值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多