STLoadingGroup
  • September 22, 2023

A Group of Loading Animations.

ScreenShot


Usage


let loadingGroup = let loadingGroup = STLoadingGroup(side: side, style: style)
loadingGroup.show(inView: view)
loadingGroup.startLoading()
// stop: loadnigGroup.stopLoading()

Custom

If you want to add your own loading:

​ 1.Comfirm STLoadingable and STLoadingConfigable protocol and implement required functions (there is a isLoading property left)

protocol STLoadingable {
var isLoading: Bool { get }

func startLoading()
func stopLoading()
}

protocol STLoadingConfig {
var animationDuration: TimeInterval { get }
var lineWidth: CGFloat { get }
var loadingTintColor: UIColor { get }
}

2.Append your loading style to STLoadingStyle in STLoadingGroup.swift file

enum STLoadingStyle: String {
case submit = “submit”
case glasses = “glasses”
case walk = “walk”
case arch = “arch”
case bouncyPreloader = “bouncyPreloader”
case zhihu = “zhihu”
case triangle = “triangle”
case pacMan = “pac man”
}

3.Add initializer for your loading: case .yourStyle: in STLoadingGroup

class STLoadingGroup {
fileprivate let loadingView: STLoadingable

init(side: CGFloat, style: STLoadingStyle) {

let bounds = CGRect(origin: .zero, size: CGSize(width: side, height: side))
switch style {
case .submit:
loadingView = STSubmitLoading(frame: bounds)
case .glasses:
loadingView = STGlassesLoading(frame: bounds)
case .walk:
loadingView = STWalkLoading(frame: bounds)
case .arch:
loadingView = STArchLoading(frame: bounds)
case .bouncyPreloader:
loadingView = STBouncyPreloaderLoading(frame: bounds)
case .zhihu:
loadingView = STZhiHuLoading(frame: bounds)
case .triangle:
loadingView = STTriangleLoading(frame: bounds)
case .pacMan:
loadingView = STPacManLoading(frame: bounds)
// insert your code here
}
}
}

GitHub


View Github

#loading #loadinganimations
YOU MIGHT ALSO LIKE...
ConfettiView

A SwiftUI View that emits confetti with user-defined shapes, images, and text.

SwiftUI Colour Wheel

A colour wheel made all in SwiftUI. There are 2 different colour wheels to choose from. The first main one ...

ColorPickerRing

A color picker implementation with color wheel appearance written in plain SwiftUI. It is compatible with UIColor and NSColor.

ASCollectionView

This repository is no longer maintained. Here's why: with the release of iOS 16 SwiftUI now enables most of the ...