如何在imageView上绘制动态线路径?
How to draw dynamic line path on imageView?
我想在图像视图上画一条线,示例如下-
我在 imageView 中有一条从 A 到 F 的路径。
If I select A and then D- Path will generate like green line and If I select A and F- Path will generate like the red line.
如何在图像视图中执行此操作?
所有点(A,B,C,D,E & F)都是UIButton
首先我必须说你的问题不是很清楚,我花了一段时间才弄清楚你到底想达到什么目的。我希望我理解正确。无需简单地键入您需要的实际代码,这就是我的处理方式:
我会创建一个包含字典的数组,其中包含字母作为键,点作为值,看起来像这样:
[
["A": CGPoint(x: 0, y: 0)],
["B": CGPoint(x: 0, y: 0)],
["C": CGPoint(x: 0, y: 0)],
["D": CGPoint(x: 0, y: 0)],
["E": CGPoint(x: 0, y: 0)],
["F": CGPoint(x: 0, y: 0)],
]
(或者更好,这个数组可以有包含类似信息的自定义模型)
然后,使用此数组在视图上绘制 UIButton,通过子类化每个 UIButton 为数组中的项目提供引用,例如字典的键。
CustomButton: UIButton {
var key: String?
}
然后,当点击第一个按钮时,将该键存储在名为 start
的局部变量中,当点击第二个按钮时,将该键存储在名为 end
的局部变量中。随后,遍历数组并找到匹配的 start
键并使用数组中的值绘制线条,直到找到匹配的 end
键。
因为有心情,我创建了一个简单的游乐场演示,但这通常不是它的工作方式。您不只是要求示例代码,您还要求帮助解决问题。
无论如何,你可以在这里找到演示:https://gist.github.com/pvroosendaal/f1617fe7e164bc94f0d37d3175252e2f
顺便说一下,这是迄今为止我写的最糟糕的一段代码,但它可以满足您的要求。
我希望它有道理,否则,请告诉我。
我想在图像视图上画一条线,示例如下-
我在 imageView 中有一条从 A 到 F 的路径。
If I select A and then D- Path will generate like green line and If I select A and F- Path will generate like the red line.
如何在图像视图中执行此操作?
所有点(A,B,C,D,E & F)都是UIButton
首先我必须说你的问题不是很清楚,我花了一段时间才弄清楚你到底想达到什么目的。我希望我理解正确。无需简单地键入您需要的实际代码,这就是我的处理方式:
我会创建一个包含字典的数组,其中包含字母作为键,点作为值,看起来像这样:
[
["A": CGPoint(x: 0, y: 0)],
["B": CGPoint(x: 0, y: 0)],
["C": CGPoint(x: 0, y: 0)],
["D": CGPoint(x: 0, y: 0)],
["E": CGPoint(x: 0, y: 0)],
["F": CGPoint(x: 0, y: 0)],
]
(或者更好,这个数组可以有包含类似信息的自定义模型)
然后,使用此数组在视图上绘制 UIButton,通过子类化每个 UIButton 为数组中的项目提供引用,例如字典的键。
CustomButton: UIButton {
var key: String?
}
然后,当点击第一个按钮时,将该键存储在名为 start
的局部变量中,当点击第二个按钮时,将该键存储在名为 end
的局部变量中。随后,遍历数组并找到匹配的 start
键并使用数组中的值绘制线条,直到找到匹配的 end
键。
因为有心情,我创建了一个简单的游乐场演示,但这通常不是它的工作方式。您不只是要求示例代码,您还要求帮助解决问题。
无论如何,你可以在这里找到演示:https://gist.github.com/pvroosendaal/f1617fe7e164bc94f0d37d3175252e2f
顺便说一下,这是迄今为止我写的最糟糕的一段代码,但它可以满足您的要求。
我希望它有道理,否则,请告诉我。