SGSegmentedProgressBarLibrary 0.0.5

SGSegmentedProgressBarLibrary 0.0.5

Sanjeev gautam维护。



  • 作者:
  • Sanjeev Gautam

SGSegmentedProgressBarLibrary

通过 Custom UIView 实现 SGSegmentedProgressBarLibrary

如何使用

声明

var segmentBar: SGSegmentedProgressBar?

添加进度视图

let rect = CGRect(x: 20, y: 100, width: self.view.frame.size.width-40, height: 2)

self.segmentBar = SGSegmentedProgressBar(frame: rect, delegate: self, dataSource: self)

self.view.addSubview(self.segmentBar!)

委托 & 数据源

extension ViewController: SGSegmentedProgressBarDelegate, SGSegmentedProgressBarDataSource {

    func segmentedProgressViewFinished(finishedIndex: Int, isLastIndex: Bool) {
    
    }

    var numberOfSegments: Int {
        return 5
    }   

    var segmentDuration: TimeInterval {
        return 5 // seconds
    }

    var paddingBetweenSegments: CGFloat {
        return 3 // gap between segments
    }

    var trackColor: UIColor {
        return UIColor.red.withAlphaComponent(0.3)
    }

    var progressColor: UIColor {
        return UIColor.red
    }
    
    var roundCornerType: SGCornerType {
        return .roundCornerBar(cornerRadious: 5)
    }
}

属性

获取暂停状态

let isPaused = self.segmentBar?.isPaused

当前片段索引

let currentPlayingIndex = self.segmentBar?.currentIndex

操作

开始

self.segmentBar?.start()

暂停

self.segmentBar?.pause()

恢复

self.segmentBar?.resume()

播放下一个

self.segmentBar?.nextSegment()

播放上一个

self.segmentBar?.previousSegment()

重新开始

self.segmentBar?.restart()

重新开始当前

self.segmentBar?.restartCurrentSegment()

重置

self.segmentBar?.reset()

手动设置分段进度条的进度

self.segmentBar?.setProgressManually(index: 0, progressPercentage: 40)