iOS 圆形滑块
iOS Circular Slider
我想创建一个如下所示的圆形滑块。
但我还想要两个功能。
1) 我想从任意点启动滑块,但在图 1 中。它从 0 开始。
2) 我想在单个圆形黑色图中包含多个滑块。
我正在分享这个项目的link:
https://www.cocoacontrols.com/controls/circularsliderdemo
谁能帮我实现这些功能。
提前致谢。
看看CAShapeLayer
。您可以创建一个完整的圆路径,并使用 strokeStart 和 strokeEnd 属性只绘制圆的一部分。您可以使用核心动画在开始和结束之间设置动画。
Github 上有一个开源的自定义手势识别器,它是一个单指手势识别器。这将是检测和响应此类控件所需的旋转手势的良好开端。 编辑: 它被称为 KTOneFingerRotationGestureRecognizer (link)
这些是帮助您入门的一些想法。
我在 github 上有一个名为 iOS-CAAnimation-group-demo 的项目,其中包括一个 "clock wipe" 动画。时钟擦除的工作原理是将一个形状层设置为图像视图的遮罩层,安装一个足够宽的全圆弧以完全填充一个矩形区域,然后将形状层的 strokeEnd 属性 动画化为reveal/hide 图像视图。时钟擦除比您需要的要复杂得多,但它会为您提供所需的种子。您将使用线宽更细的形状层,并将其用作内容层,而不是蒙版。
我想创建一个如下所示的圆形滑块。
但我还想要两个功能。
1) 我想从任意点启动滑块,但在图 1 中。它从 0 开始。
2) 我想在单个圆形黑色图中包含多个滑块。
我正在分享这个项目的link: https://www.cocoacontrols.com/controls/circularsliderdemo
谁能帮我实现这些功能。 提前致谢。
看看CAShapeLayer
。您可以创建一个完整的圆路径,并使用 strokeStart 和 strokeEnd 属性只绘制圆的一部分。您可以使用核心动画在开始和结束之间设置动画。
Github 上有一个开源的自定义手势识别器,它是一个单指手势识别器。这将是检测和响应此类控件所需的旋转手势的良好开端。 编辑: 它被称为 KTOneFingerRotationGestureRecognizer (link)
这些是帮助您入门的一些想法。
我在 github 上有一个名为 iOS-CAAnimation-group-demo 的项目,其中包括一个 "clock wipe" 动画。时钟擦除的工作原理是将一个形状层设置为图像视图的遮罩层,安装一个足够宽的全圆弧以完全填充一个矩形区域,然后将形状层的 strokeEnd 属性 动画化为reveal/hide 图像视图。时钟擦除比您需要的要复杂得多,但它会为您提供所需的种子。您将使用线宽更细的形状层,并将其用作内容层,而不是蒙版。