颜色轮 0.6.0

颜色轮 0.6.0

Julian Porter 维护。



颜色轮 0.6.0

  • jdstmporter

颜色轮

CI Status Version License Platform

ColourWheelControl 定义了一个简单的UIKit控件,提供交互式颜色选择功能。该类是 @IBDesignable,因此可以与XCode的Interface Designer无缝工作。它继承自 UIControl,因此具有所有常规配置属性和功能,例如背景颜色、边框、UIEvent等)以及管理其自身布局的能力。

API

初始化器

初始化器继承自 UIControl

@IBInspectable属性

  • brightnessEnabled : Bool { get set }

    是否在控件中显示/激活可选亮度选择条。当设置为false时,所有颜色都将具有默认亮度1.0

    警告:该参数应在控制实例化时设置一次;动态更改它可能会产生不可预见的影响。

    默认 = true(亮度选择器开启)

  • nBits : UInt { get set }

    用于表示颜色分量的比特数(将此设置为3将给每个颜色分量3位,即RGB或HSV的每个分量的级别有8个)。如果您想限制用户可用的调色板,这可能很有用。

    默认 = 8(标准24位颜色HSV)

  • colour : UIColor { get set }

    当前选中的颜色。写入它会将控制重置为指定颜色。

事件

每当选中的颜色更改时,都会触发标准的 UIEvent.valueChanged

事件按常规方法管理 UIControl 实例,因此可以像其他控件一样在 Interface Builder 中连接。

示例

要运行示例项目,请克隆存储库,然后首先从示例目录中运行 pod install。演示具有 nBits=3,但这可以进行配置

nBits = 3

A Screenshot with 3 bits per component

nBits = 8

A Screenshot

需求

安装

ColorWheel 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中

pod 'ColourWheel'

作者

jdstmporter, [email protected]

致谢

这是基于 Justin Meiners 编写的 Objective-C 控件的扩展分支。新特性包括

  • 移植到 Swift 并针对 iOS 12.0 及以上版本的 Swift 5 进行现代化改造
  • 添加自定义亮度选择滑块,样式类似于颜色轮,用于替代原始的 UISlider
  • 量化能力
  • 改进了“光标”对象以显示在选择器中的鼠标位置
  • ColourWheelControl 提供了颜色轮、亮度滑块和颜色井,作为一个单个 @IBDesignable 控制单元,可以在 Interface Builder 中的视图中拖放,并自行管理

此外,还要感谢 ConfusedVorlon 提醒我注意某些条件下控制单元会多次构建颜色轮,导致性能下降的问题,以及后续诊断问题和测试修复的协助。这一点有助于 0.5.0 版本中做出的改动。

许可

颜色轮采用 MIT 许可证。有关更多信息,请参阅 LICENSE 文件

版本历史

0.6.0 使亮度选择控制可选,通过属性设置选择
0.5.1 扩展文档
0.5.0 支持 Swift 5 和 iOS 12 的基本功能
增加了检查以避免重复计算轮图形
0.4.1 更新文档
0.4.0 引入了量化轮上颜色的功能,以便提供受限的颜色板
0.3.0 改进了 Pod 打包
0.2.0 支持 Swift 5 和 iOS 12
0.1.0 初始版本,支持 Swift 4 和 iOS 11 的基本功能