Fork me on GitHub

Alex Rupérez

Published: 09 Jun 17:24
I starred Minitour/EasyNotificationBadge at GitHub.
UIView extension that adds a notification badge.
View on GitHub


CocoaPods CocoaPods CocoaPods


pod 'EasyNotificationBadge'

Or simply drag and drop NSBadge.swift to your project.


To add a badge with default settings use this (This also applies to updating an existing badge):

view.badge(text: "5")

To remove the badge:

view.badge(text: nil)

Advanced Usage

var badgeAppearance = BadgeAppearance()
badgeAppearance.backgroundColor = //default is red
badgeAppearance.textColor = UIColor.white // default is white
badgeAppearance.textAlignment = .center //default is center
badgeAppearance.textSize = 15 //default is 12
badgeAppearance.distanceFromCenterX = 15 //default is 0
badgeAppearance.distanceFromCenterY = -10 //default is 0
badgeAppearance.allowShadow = true
badgeAppearance.borderColor = .blue
badgeAppearance.borderWidth = 1
view.badge(text: "Your text", appearance: badgeAppearance)


When calling .badge make sure that the view has already been loaded and has a superview. Setting a badge on a view that hasn't fully loaded can lead to unexpected results.


Some of the code that was used in this extension was originally written by mustafaibrahim989 in the library MIBadgeButton-Swift.