RSLoadingView
                                
                                 RSLoadingView copied to clipboard
                                
                                    RSLoadingView copied to clipboard
                            
                            
                            
                        Awesome loading animations using 3D engine written with Swift
RSLoadingView
Introduction
RSLoadingView bring your app to the new age of loading animations using 3D engine.
- Written with Swift
- Customizable
- Using Apple's SceneKit with OpenGL
- Include HUB feature: show full screen loading HUB with one line of code
- Or use as standalone view
- Configurable in interface builder
Requirements
- Swift 4.0
- iOS 9+
Demo
SpinAlone - base Variant
 
SpinAlone - base Variant
 
SpinAlone - inAndOut Variant; speedFactor = 2.0; lifeSpanFactor = 2.0; mainColor = UIColor.red
 
Twins - base Variant
 
Installation
RSLoadingView is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "RSLoadingView"
Usage
import UIKit
import RSLoadingView
class ViewController: UIViewController {
  @IBAction func showLoadingHub() {
    let loadingView = RSLoadingView()
    loadingView.show(on: view)
  }
  @IBAction func showOnViewTwins() {
    let loadingView = RSLoadingView(effectType: RSLoadingView.Effect.twins)
    loadingView.show(on: view)
  }
  func hideLoadingHub() {
    RSLoadingView.hide(from: view)
  }
  @IBAction func showOnWindow() {
    let loadingView = RSLoadingView()
    loadingView.showOnKeyWindow()
  }
  func hideLoadingHubFromKeyWindow() {
    RSLoadingView.hideFromKeyWindow()
  }
  
}
Supported Effect
| Effect | Variants | 
|---|---|
| RSLoadingSpinAlone | base, inAndOut | 
| RSLoadingTwins | base | 
| RSLoadingTriples | (coming soon) | 
Customization
Loading View Related
| Field | Default Value | 
|---|---|
| speedFactor | 1.0 | 
| mainColor | UIColor.white | 
| colorVariation | 0.0 | 
| sizeFactor | 1.0 | 
| spreadingFactor | 1.0 | 
| lifeSpanFactor | 1.0 | 
| variantKey | "" | 
HUB Related
| Field | Default Value | 
|---|---|
| shouldDimBackground | true | 
| dimBackgroundColor | UIColor.black.withAlphaComponent(0.6) | 
| isBlocking | true | 
| shouldTapToDismiss | false | 
| sizeInContainer | CGSize(width: 180, height: 180) | 
Author
Roy Ng, [email protected] @ Redso, https://www.redso.com.hk/
Linkedin: https://www.linkedin.com/in/roy-ng-19427735/
License
RSLoadingView is available under the MIT license. See the LICENSE file for more info.