IGColorPicker 0.4.3

IGColorPicker 0.4.3

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2020年2月
SPM支持SPM

Andrea AntonioniJomis K维护。



  • Andrea Antonioni

alt text

Language: Swift 5 License: MIT Platform: iOS

IGColorPicker是一个非常出色的颜色选择器🎨用Swift编写的。

alt text

目录

文档

颜色

颜色选择器附带我们的一组颜色

alt text

但如果你不喜欢这些颜色,你也可以使用你自己的颜色🖍:

colorPickerView.colors = [UIColor.red, UIColor.yellow, UIColor.green, UIColor.black]

样式

  • 样式 枚举:颜色选择器单元格的外观和感觉

    • 圆形

      alt text

    • 方形

      alt text

  • 选择样式 枚举:选中颜色时应用的样式

    • 勾选

      alt text

    • alt text

其他功能

  • preselectedIndex Int?:在颜色选择器中预选颜色的索引

  • isSelectedColorTappable Bool:如果为真,则可以通过点击取消选择已选择的颜色

  • scrollToPreselectedIndex Bool:如果为真,预选索引将显示在颜色选择器的中心

安装

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

pod 'IGColorPicker'

示例

要运行示例项目,请先克隆仓库,然后在示例目录中运行pod install

入门

ColorPickerView

ColorPickerView只是一个从UIView继承的类,因此您可以使用Storyboard或编程方式创建颜色选择器

Storyboard

  • 在Storyboard中添加一个UIView。转到身份检查器,将其类设置为ColorPickerView
  • 只需将视图拖放到正确的类即可 🤙🏻

以编程方式

只需像初始化UIView一样初始化颜色选择器,并将其添加到视图层次结构中即可。

import IGColorPicker

class ViewController {
  var colorPickerView: ColorPickerView!

  override func viewDidLoad() {
    super.viewDidLoad()

    colorPickerView = ColorPickerView(frame: CGRect(x: 0.0, y: 0.0, width: widthSize, height: heightSize))
    view.addSubview(colorPickerView)
  }

}

委托

ColorPickerViewDelegate是识别颜色上的点击手势的委托协议。这是一个可选的委托,但如果需要知道用户选择了哪种颜色,则应该实现它。

// Set the delegate 🙋🏻‍♂️
colorPickerView.delegate = self

// MARK: - ColorPickerViewDelegate
extension ViewController: ColorPickerViewDelegate {

  func colorPickerView(_ colorPickerView: ColorPickerView, didSelectItemAt indexPath: IndexPath) {
    // A color has been selected
  }

  // This is an optional method
  func colorPickerView(_ colorPickerView: ColorPickerView, didDeselectItemAt indexPath: IndexPath) {
    // A color has been deselected
  }

}

布局

每个开发者都可以根据自己的设计定制颜色选择器布局。为此,您必须实现我们的布局委托ColorPickerViewDelegateFlowLayout

// Set the delegate 🙋🏻‍♂️
colorPickerView.layoutDelegate = self

// MARK: - ColorPickerViewDelegateFlowLayout
extension ViewController: ColorPickerViewDelegateFlowLayout {

  // ------------------------------------------------------------------
  // All these methods are optionals, your are not to implement them 🖖🏻
  // ------------------------------------------------------------------

  func colorPickerView(_ colorPickerView: ColorPickerView, sizeForItemAt indexPath: IndexPath) -> CGSize {
    // The size for each cell
    // 👉🏻 WIDTH AND HEIGHT MUST BE EQUALS!
  }

  func colorPickerView(_ colorPickerView: ColorPickerView, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
    // Space between cells
  }

  func colorPickerView(_ colorPickerView: ColorPickerView, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
    // Space between rows
  }

  func colorPickerView(_ colorPickerView: ColorPickerView, insetForSectionAt section: Int) -> UIEdgeInsets {
    // Inset used aroud the view
  }

}

项目详情

要求

  • Swift 4.1
  • Xcode 9.0+
  • iOS 8.3+

贡献

随时欢迎提出想法进行合作💭,问题⁉️和/或拉取请求🔃.

以下是一个关于错误修复和新功能工作的待办事项列表

  • 自定义检查大小
  • 支持自定义视图在ColorPickerViewSelectStyle
  • 支持在ColorPickerViewStyle中自定义样式
  • M13Checkbox 替换为另一个框架。或者直接创建一个带有动画的自定义复选框

附注。 如果你在你的应用中使用 IGColorPicker,我们非常乐意听到你的反馈!😉

许可证

版权所有(c)2018 iGenius Srl

在此特此免费允许任何获得此软件及其相关文档文件(“软件”)副本的人(“许可证持有人”)不受限制地处理软件,包括但不限于使用、复制、修改、合并、发布、分发、转授许可和/or 销售软件副本的权利,并允许将软件提供给第三方使用,以便其执行上述行为,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的任何副本或主要部分中。

软件按“现状”提供,不包括任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和不受侵权等方面的保证。在任何情况下,作者或版权所有者都不应对任何索赔、损害或其他责任负责,无论这些责任源于合同、侵权或其他原因,并 giguiding from、起源于或与软件或其使用或处理有关。