如何制作自定义曲线 UISlider?

How to make custom curvy UISlider?

我想创建适合屏幕的自定义曲线 UISlider,如下图所示。

我检查了 MTCircularSlider 库并将 tranform 动画应用到 UISlider 控件,但 none 它们可以正常工作。 多次尝试后,我的思绪卡住了。

谢谢

使用 MTCircularSlider 库

fileprivate var controlRadius: CGFloat {
     return min(bounds.width, bounds.height) / 2.0 - controlThickness
 }

见上图,此库使用 min 宽度和高度的值。

因此,您需要保持视图宽度,因为它取决于视图的最小值。 您可以根据下面的截图

通过前导和尾随来管理您的视图

或者你可以使用 proportionalWidth 约束到你的超级视图的 0.80

同时设置trackAngle如下