LoadingView

1.0.4

Easy to use, highly customisable, animated view to display a loading
VladimirBrejcha/LoadingView

What's New

v1.0.4

2022-11-25T00:45:07Z
  • fix self refers to the method 'LoadingView.self', which may be unexpected warning

LoadingView

LoadingView is an highly customizable and easy to use UI element for showing loading status written in Swift.

Preview

Features

  • Show animated loading
  • Show an information message
  • Show an error message with repeat button
  • Customize colors, fonts, animations
  • Import your own loading animation
  • Use in code or from interface builder

Requirements

  • iOS 10.0+
  • Xcode 11+
  • Swift 5.1+

Installation

Swift Package Manager

The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler.

Use Xcode’s new Swift Packages option, which is located within the File menu.

Usage example

ExampleApp

import LoadingView

class ViewController: UIViewController {
    @IBOutlet weak var loadingView: LoadingView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        loadingView.repeatTouchUpHandler = { button in
            // handle repeatButton touches
        }
        loadingView.state = .loading // set loadingView state
    }
}

States

hidden

View is fully hidden

loading

View is showing loading animation

info

View is showing information with the given message

error

View is showing error with the given messsage and repeat button

Advanced

Use your own animations instead of default PulsingCircleAnimation

Create an animation and conform it to the Animation protocol. Set the loadingAnimation property.

loadingView.loadingAnimation = MyAnimation() // must conform to Animation protocol

Turn on state change logging

loadingView.logStateChanges = true // enable logging if needed

Credits

Example photo by Jason Leung on Unsplash

License

LoadingView is released under the MIT license. See LICENSE for details.

Description

  • Swift Tools 5.1.0
View More Packages from this Author

Dependencies

  • None
Last updated: Mon Mar 18 2024 01:59:03 GMT-0900 (Hawaii-Aleutian Daylight Time)