TestsTested | ✓ |
LangLanguage | SwiftSwift |
License | MIT |
ReleasedLast Release | Dec 2015 |
SPMSupports SPM | ✗ |
Maintained by sgr-ksmt.
before :
// usual usage
UIApplication.sharedApplication().networkActivityIndicatorVisible = true
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
class SomeClass {
var connectionCount: Int
init() {
connectionCount = 0
}
func getData() {
doConnection1()
doConnection2()
}
func doConnection1() {
UIApplication.sharedApplication().networkActivityIndicatorVisible = true
connectionCount += 1
// some async connection
}
func endConnection1() {
if connectionCount == 0 {
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
}
}
func doConnection2() {
UIApplication.sharedApplication().networkActivityIndicatorVisible = true
connectionCount += 1
// some async connection
}
func endConnection2() {
if connectionCount == 0 {
UIApplication.sharedApplication().networkActivityIndicatorVisible = false
}
}
}
after
// usual usage
NetworkActivityIndicator.shared().start()
NetworkActivityIndicator.shared().end()
class SomeClass {
init() {
}
func getData() {
doConnection1()
doConnection2()
}
func doConnection1() {
NetworkActivityIndicator.shared().start()
// some async connection
}
func endConnection1() {
NetworkActivityIndicator.shared().end()
// if `activeCount` is above 0, remain indicator visible.
}
func doConnection2() {
NetworkActivityIndicator.shared().start()
// some async connection
}
func endConnection2() {
NetworkActivityIndicator.shared().end()
// if `activeCount` is above 0, remain indicator visible.
}
}
Example is here
Clone this repository, then add SUNetworkActivityIndicator.swift
to your Xcode Project.