SGSegmentedProgressViewLibrary 0.0.5

SGSegmentedProgressViewLibrary 0.0.5

Sanjeev gautam 维护。



  • 作者
  • Sanjeev Gautam

SGSegmentedProgressViewLibrary

SGSegmentedProgressViewLibrary 进度条是基于 UIProgressView 开发的。

如何使用

声明

var segmentBar: SGSegmentedProgressView?

添加进度视图

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

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

self.view.addSubview(self.segmentBar!)

代理 & 数据源

extension ViewController: SGSegmentedProgressViewDelegate, SGSegmentedProgressViewDataSource {

    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)