Show messages on top of the status bar. Customizable colors, font and animation. Supports progress display and can show an activity indicator. iOS 7/8 ready. This is the swift version of ,thanks @jaydee3. Please open a Github issue, if you think anything is missing or wrong.
not support
- Drag the
DBStatusBarNotification/DBStatusBarNotification
folder into your project. - Add
#include "StatusBarNotification.h"
, where you want to use it
StatusBarNotification is a singleton. You don't need to initialize it anywhere. Just use the following class methods:
class func showWithStatus(status: String) -> UIView?
class func showWithStatus(status: String, timeInterval: NSTimeInterval) -> UIView?
The return value will be the notification view. You can just ignore it, but if you need further customization, this is where you can access the view.
class func dismiss()
class func dismissAfter(delay: NSTimeInterval)
class func showProgress(progress: CGFloat) // Range: 0.0 - 1.0
class func showActivityIndicator(show: Bool, style:UIActivityIndicatorViewStyle)
Included styles:
Use them with the following methods:
class func showWithStatus(status: String, styleName: String) -> UIView?
class func showWithStatus(status: String, timeInterval: NSTimeInterval, styleName: String) -> UIView?
To present a notification using a custom style, use the identifier
you specified in addStyleNamed:prepare:
. See Customization below.
@goelv / @dskyu / @graceydb informed me (see #15, #30, #49), that his app got rejected because of a status bar overlay (for violating 10.1/10.3). So don't overuse it. Although I haven't heard of any other cases.
class func setDefaultStyle(prepareBlock: PrepareStyleBlock?)
class func addStyleNamed(identifier: String, prepareBlock:PrepareStyleBlock) -> String {
The prepareBlock
gives you a copy of the default style, which can be modified as you like:
StatusBarNotification.addStyleNamed(<#identifier#>) { (style) -> StatusBarStyle in
// main properties
style!.barColor = <#color#>
style!.textColor = <#color#>
style!.font = <#font#>
// advanced properties
style.animationType = <#type#>;
style.textShadow = <#shadow#>;
style.textVerticalPositionAdjustment = <#adjustment#>;
// progress bar
style.progressBarColor = <#color#>;
style.progressBarHeight = <#height#>;
style.progressBarPosition = <#position#>;
return style!
}
None
Move
Bounce
Fade
Bottom
Center
Top
Below
NavBar