5

我正在尝试构建一个界面,用户可以在屏幕上移动手指,图像列表沿路径移动。这个想法是图像中心永远不会离开路径。

我发现的大部分内容都是关于如何使用 CGPath 制作动画,而不是实际使用路径作为用户移动的轨迹。

== 更新。更好的描述==

即使用户没有在路径上移动手指,我也需要在路径上跟踪对象。

例如(下图),如果对象位于路径的开头并且用户触摸屏幕上的任何位置并将手指从左向右移动我需要对象从左向右移动但遵循路径,即,随着它向右走向路径的尽头而上升。

== 结束更新

这是我绘制的路径,想象一下我将有一个视图(任何图像),用户可以触摸它并沿着路径拖动它,不需要将手指精确地移动到路径上。如果用户从左向右移动,图像应该从左向右移动,但如果需要沿着路径向上移动。

弯曲的路径

这就是我创建路径的方式:

   CGPoint endPointUp = CGPointMake(315, 124);
    CGPoint endPointDown = CGPointMake(0, 403);
    CGPoint controlPoint1 = CGPointMake(133, 187);
    CGPoint controlPoint2 = CGPointMake(174, 318);

    CGMutablePathRef path = CGPathCreateMutable();
    CGPathMoveToPoint(path, NULL, endPointUp.x, endPointUp.y);
    CGPathAddCurveToPoint(path, NULL, controlPoint1.x, controlPoint1.y, controlPoint2.x, controlPoint2.y, endPointDown.x, endPointDown.y);

任何想法我怎么能做到这一点?

4

1 回答 1

0

你可以用一个数学函数绘制一个图形,然后沿着这个轨迹
对象移动。

于 2011-06-21T08:52:08.837 回答