DSGradientProgressView 1.0.1

DSGradientProgressView 1.0.1

由以下人员维护:Abhinav TyagiAbhinav Tyagi



  • Abhinav Tyagi

DSGradientProgressView

Swift Version License CocoaPods Compatible Platform

介绍

DSGradientProgressView 是用 Swift 编写的一个简单且可自定义的动画进度条。

灵感来源于 GradientProgressView

示例

Demo gif

gif 看起来闪烁,但在设备上的实际动画不会。

用法

只需在 Storyboard 中将一个 UIView 拖放到您的视图控制器中。选择您的视图,在 Identity Inspector 中将类更改为 DSGradientProgressView

别忘了将模块更改为 DSGradientProgressView

Demo set class

根据您的需要调整视图大小。(大多数情况下,3px 的高度看起来很好)。

在您的视图控制器源文件中导入 DSGradientProgressView

import DSGradientProgressView

在您的视图控制器源文件中创建视图的 IBOutlet

@IBOutlet weak var progressView: DSGradientProgressView!

定制

您可以更改进度条的基本颜色。有两种方式来完成这个任务

  • 通过在源文件中设置视图对象的 barColor 属性。
progressView.barColor = UIColor.green
  • 在 Storyboard 本身中更改条形颜色属性。

Demo color picker

动画

DSGradientProgressView 被设计用来跟踪等待完成的请求数量。因此 API 的命名采用信号量方法名称。您通过调用 DSGradientProgressViewwait() 方法来开始动画,通过调用 signal() 方法来停止。它将自身隐藏和显示。

progressView.wait()
  // waiting for some resource
progressView.signal()

因此,如果您希望视图控制器等待多个网络请求(或其他任何资源)完成,并且希望进度条一直动画直到所有请求完成,您可以通过简单调用次数来做到这一点。之后,以相同次数调用 signal()

progressView.wait()
  // waiting for some resource asynchronously
ResourceOne.sharedInstance.fetchData { (data, error) in
         self.progressView.signal()
}

progressView.wait()
  // waiting for another resource asynchronously
ResourceTwo.sharedInstance.fetchData { (data, error) in
         self.progressView.signal()
}

安装

CocoaPods(推荐)

CocoaPods 是 Cocoa 项目的依赖项管理器。您可以使用以下命令安装它

$ gem install cocoapods

CocoaPods 1.1.0+ 需要 DSGradientProgressView 1.0.0+ 构建。

要使用 CocoaPods 将 DSGradientProgressView 集成到您的 Xcode 项目中,请在您的 Podfile 中指定它

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

target '<Your Target Name>' do
    pod 'DSGradientProgressView'
end

然后,运行以下命令

$ pod install

手动

DSGradientProgressView.swift 复制到您的 Xcode 项目中。这样就完成了。

需求

  • iOS 8.0+
  • Xcode 10.0+
  • Swift 4.2+

联系人