【发布时间】:2011-06-15 15:56:30
【问题描述】:
我正在尝试构建一个用户可以在屏幕上移动手指的界面,并且图像列表沿路径移动。这个想法是图像中心永远不会离开路径。
我发现的大部分内容都是关于如何使用 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);
知道我该如何实现这一目标吗?
【问题讨论】:
-
你能添加代码你是怎么做的吗?我也有同样的问题