我想创建一个如下所示的圆形 slider 。
但我还想要两个功能。
1) 我想从任意点启动 slider ,但在图 1 中。从0开始。
2) 我想在单个圆形黑色图中包含多个 slider 。
我正在分享这个项目的链接: https://www.cocoacontrols.com/controls/circularsliderdemo
谁能帮我实现这些功能。 提前致谢。
最佳答案
看看 CAShapeLayer
。您可以创建一个完整的圆路径,并使用 strokeStart 和 strokeEnd 属性只绘制圆的一部分。您可以使用核心动画在开始和结束之间设置动画。
Github 上有一个开源的自定义手势识别器,是一个单指手势识别器。这将是检测和响应此类控件所需的旋转手势的良好开端。 编辑:它叫做KTOneFingerRotationGestureRecognizer (链接)
这些是帮助您入门的一些想法。
我在 github 上有一个名为 iOS-CAAnimation-group-demo 的项目其中包括“时钟删除”动画。时钟删除的工作原理是将一个形状层设置为 ImageView 的 mask 层,安装一个足够宽的全圆弧以完全填充一个矩形区域,然后为形状层的 strokeEnd 属性设置动画以显示/隐藏 ImageView 。时钟删除比您需要的要复杂得多,但它会为您提供所需的种子。您可以使用线宽更细的形状层,并将其用作内容层,而不是蒙版。
关于iOS 圆形 slider ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29099359/