测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最后发布 | Jul 2017 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Si Ma 维护。
将 SMSegmentView.swift
和 SMSegment.swift
拖入您的 Xcode 项目。
初始化 SMSegmentView:您可以使用 SMSegmentView(frame:)
通过默认属性初始化您的分段视图。但通常,您可能想使用 SMSegmentView(frame:, dividerColour:, dividerWidth:, segmentAppearance:)
来使其看起来更加个性化。参数 segmentAppearance:
读取 SMSegmentAppearance
实例。您可以在 SMSegmentAppearance
类中找到它支持哪些属性。
例:
let appearance = SMSegmentAppearance()
appearance.segmentOnSelectionColour = UIColor(red: 245.0/255.0, green: 174.0/255.0, blue: 63.0/255.0, alpha: 1.0)
appearance.segmentOffSelectionColour = UIColor.whiteColor()
appearance.titleOnSelectionFont = UIFont.systemFontOfSize(12.0)
appearance.titleOffSelectionFont = UIFont.systemFontOfSize(12.0)
appearance.contentVerticalMargin = 10.0
let segmentView = SMSegmentView(frame: SomeFrame, dividerColour: UIColor(white: 0.95, alpha: 0.3), dividerWidth: 1.0, segmentAppearance: appearance)
为 UIControlEvents.ValueChanged 添加操作,并实现动作方法。
例如:segmentView.addTarget(self, action: #selector(YourViewController.selectSegmentInSegmentView(_:)), forControlEvents: .ValueChanged)
将分段添加到您的分段视图中。
例:
segmentView.addSegmentWithTitle("Segment 1", onSelectionImage: UIImage(named: "target_light"), offSelectionImage: UIImage(named: "target"))
segmentView.addSegmentWithTitle("Segment 2", onSelectionImage: UIImage(named: "handbag_light"), offSelectionImage: UIImage(named: "handbag"))
segmentView.addSegmentWithTitle("Segment 3", onSelectionImage: UIImage(named: "globe_light"), offSelectionImage: UIImage(named: "globe"))
您可以通过将整数分配给 selectedSegmentIndex
来编程式选择/取消选择一个分段。
您可以通过将 organiseMode
设置为 .Vertical
将所有分段垂直组织起来。默认设置为 .Horizontal
。
例如:segmentView.organiseMode = .Vertical
该框架附带一个示例项目,展示了如何使用它。此外,这个教程可能给您一些关于如何扩展这个框架的一些想法。