gpt4 book ai didi

ios - 如何将 UIBezierPath 矩形的起点和终点更改为 CAShapeLayer

转载 作者:行者123 更新时间:2023-11-30 11:54:15 25 4
gpt4 key购买 nike

我想在我的对象周围创建一个矩形进度条层,它可能是 uibutton、uiview 或任何对象,所以我创建了以下代码:

let layer_ca = CAShapeLayer.init()
layer_ca.strokeColor = UIColor.green.cgColor
layer_ca.lineWidth = 10.0
layer_ca.fillColor = UIColor.clear.cgColor

let bezier_path = UIBezierPath.init(roundedRect: CGRect.init(x: captureButton.frame.origin.x, y: captureButton.frame.origin.y, width: captureButton.frame.width, height: captureButton.frame.height), cornerRadius: 15)

bezier_path.move(to: CGPoint(x: 12, y: 15))

layer_ca.path = bezier_path.cgPath

let animation = CABasicAnimation.init(keyPath: "strokeEnd")
animation.fromValue = NSNumber.init(value: 0.0)
animation.toValue = NSNumber.init(value: 1.0)
animation.duration = 2.0

layer_ca.add(animation, forKey: "myStroke")

self.view.layer.addSublayer(layer_ca)

这里的“captureButton”是我的对象,因此它使用 cabasicanimation 在该对象上方成功创建,现在我的问题是如何更改路径的终点以及我应该如何将路径停止到距离路径的一半,然后我继续走相同的路径,每当我调用开始时我都会停止之前的路径。

我需要像对象周围的矩形进度条一样。

请帮助我任何应该知道答案的人..!

最佳答案

我也有同样的问题,花了几个小时才弄清楚。如果你想控制起点或终点,你应该创建自己的BezierPath,并自定义你的路径。 bezierPath.move("起始位置"),就是这样,最后一个点将是结束位置。

关于ios - 如何将 UIBezierPath 矩形的起点和终点更改为 CAShapeLayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48005473/

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