gpt4 book ai didi

ios - 如何根据用户拖动 View 沿着弯曲的 CGPath 移动 UIView

转载 作者:可可西里 更新时间:2023-11-01 05:00:23 24 4
gpt4 key购买 nike

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

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

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

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

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

== 结束更新

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

The curved path

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

   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);

知道我怎样才能做到这一点吗?

最佳答案

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

关于ios - 如何根据用户拖动 View 沿着弯曲的 CGPath 移动 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6360665/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com