Latest 2.1
Homepage https://github.com/IdleHandsApps/StatusBarOverlay/
License MIT
Platforms ios 8.0, requires ARC
Dependencies ReachabilitySwift
Frameworks UIKit
Authors

StatusBarOverlay

StatusBarOverlay Language: Swift 4.0

alt demo

StatusBarOverlay will automatically show a "No Internet Connection" bar when your app loses connection, and hide it again. It supports apps which hide the status bar and The Notch

Features

  • Just a few lines of code and StatusBarOverlay will automatically show & hide when internet connection is lost & regained
  • Support for apps that hide the status bar permanently
  • Support for the iPhone X Notch
  • Optionally you can choose to show the status bar anytime with custom text, eg for Debug or Demo modes
  • Optionally you can show a drop down message, below the status bar, with a click handle, great for nonintrusive alerts
  • Fully customisable colors & text

How to install

Add this to your CocoaPods Podfile

pod 'StatusBarOverlay'

How to use

In your Info.plist file set UIViewControllerBasedStatusBarAppearance = true

In your AppDelegate.didFinishLaunchingWithOptions() method set StatusBarOverlay.host to your server domain. StatusBarOverlay will use this to check connectivity

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

  StatusBarOverlay.host = "example.com"

  return true
}

If you use a common UIViewController subclass, add the following to it. All of view controllers show override these methods, so its best to use a common UIViewController subclass

import StatusBarOverlay // if StatusBarOverlay is in CocoaPod

extension CommonViewController {

  override var preferredStatusBarStyle: UIStatusBarStyle {
    return StatusBarOverlay.preferredStatusBarStyle
  }

  override var prefersStatusBarHidden: Bool {
    return StatusBarOverlay.prefersStatusBarHidden
  }

  override var preferredStatusBarUpdateAnimation: UIStatusBarAnimation {
    return StatusBarOverlay.preferredStatusBarUpdateAnimation
  }
}

Thats it. Run your app, try turning on and off airplane mode and the No Internet Connection bar will show and hide.
On the simulator sometimes the hiding event isnt fired. All devices work normally

Dependencies

  • Alamofire is required for the connectivity events

Get these while stocks last :)

An elegant solution for keeping views visible when the keyboard is being shown
https://github.com/IdleHandsApps/IHKeyboardAvoiding

Button styles that are centralied and reusable, and hooked up to InterfaceBuilder
https://github.com/IdleHandsApps/DesignableButton

An extension to easily set your UINavigationBar transparent and hide the shadow
https://github.com/IdleHandsApps/UINavigationBar-Transparent

Author

It’d be great to hear about any cool apps that are using StatusBarOverlay

License

Distributed under the MIT License

Latest podspec

{
    "name": "StatusBarOverlay",
    "version": "2.1",
    "summary": "A Status Bar Overlay which will automatically display a No Connection message and can display custom messages too",
    "description": "StatusBarOverlay will automatically show a "No Internet Connection" bar when your app loses connection, and hide it again. It supports apps which hide the status bar and The Notch",
    "homepage": "https://github.com/IdleHandsApps/StatusBarOverlay/",
    "license": {
        "type": "MIT"
    },
    "authors": {
        "Fraser Scott-Morrison": "[email protected]"
    },
    "platforms": {
        "ios": "8.0"
    },
    "swift_version": "4.2",
    "source": {
        "git": "https://github.com/IdleHandsApps/StatusBarOverlay.git",
        "tag": "2.1"
    },
    "source_files": "Sources/*.swift",
    "dependencies": {
        "ReachabilitySwift": [
            "~> 4.3"
        ]
    },
    "resource_bundles": {
        "StatusBarOverlay": [
            "Sources/*.xib",
            "Sources/*.xcassets"
        ]
    },
    "frameworks": "UIKit",
    "requires_arc": true
}

Pin It on Pinterest

Share This