ConnectedDots
安装
ConnectedDots 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile
pod 'ConnectedDots'
使用
您可以通过代码或 InterfaceBuilder 创建视图
要使用代码配置控件,请使用
//Total number of dots
dots.numberOfDots = 8
//Default fill color
dots.defaultColor = .blue
//Dot radius
dots.dotRadius = 20.0
//Width of line that connects dots
dots.connectorLineWidth = 6.0
//Whether to show number inside dot
dots.showText = true
//Dots number font
dots.textFont = UIFont.systemFont(ofSize: 20.0)
//Dots number text color
dots.textColor = .darkGray
//Filled dots text color
dots.filledDotTextColor = .white
//Change to start dot text from different number (*default is 0*)
dots.textStartingNumber = 0
//Change dot selection outline color and width
dots.selectionOutlineColor = .red
dots.selectionOutlineWidth = 2.0
//Change content insets
dots.insets = UIEdgeInsets(top: 0, left: 20, bottom: 0, right: 10)
对于点选择有三个可用选项
-
无 - 用户不能通过点击选择点
-
直接 - 用户通过点击选择点
-
递增 - 更像 UIPageControl。从右侧点击选择下一个点。从左侧点击选择上一个点。
默认为 直接。请在代码中更改它
dots.selectionType = .progressive
如果您想要限制一些点的选择,请使用 委托
dots.delegate = self
func connectedDots(_ connectedDots: ConnectedDots, shouldSelectDotAt index: Int) -> Bool {
return index % 2 == 0
}
要使用以下函数设置点的填充颜色
//Apply fill color to dot at index
dots.setFillColor(.orange, forDotWithIndex: 1)
//Remove fill color for dot at index
dots.resetDotFillColor(atIndex: 1)
//Remove fill color for all dots
dots.resetFillColors()
要程序化选择点,请使用
//Select dot at index
dots.selectDot(atIndex: 6)
//Deselect dot
dots.deselectDot()
//Get selected dot index
dots.selectedDotIndex
要通知点选择变化,请使用 Value Changed
事件。从 Interface Builder 创建连接到 IBAction 或使用
dots.addTarget(self, action: #selector(self.dotsSelectionChanged(_:)), for: .valueChanged)
作者
Artur Balabanskyy,[email protected]
许可
ConnectedDots可在MIT许可下使用。有关更多信息,请参阅LICENSE文件。