

Highly configurable iOS UIView for presenting notifications that doesn’t block the UI.
Screenshots

Requirements
SwiftyNotifications Version |
Minimum iOS Target |
Swift Version |
0.7.1 |
11.0 |
5.x |
0.5.3 |
9.0 |
4.2 |
0.5.2 |
9.0 |
4.1 |
0.5.1 |
8.0 |
4.0 |
0.4 |
8.0 |
3.x |
CocoaPods
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
$ gem install cocoapods
To integrate SwiftyNotifications into your Xcode project using CocoaPods, specify it in your Podfile:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '11.0'
use_frameworks!
target '<Your Target Name>' do
pod 'SwiftyNotifications', '~>0.7.1'
end
Then, run the following command:
$ pod install
Carthage
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
brew update
brew install carthage
To integrate SwiftyNotifications into your Xcode project using Carthage, specify it in your Cartfile:
github "abdullahselek/SwiftyNotifications" ~> 0.7.1
Swift Package Manager
Modify your Package.swift file to include the following dependency:
.package(url: "https://github.com/abdullahselek/SwiftyNotifications.git", from: "0.7.1")
XCFramework
XCFrameworks require Xcode 11 or later and integration is very similar to integration of .framework format. Please use script scripts/build-framework.sh to generate binary SwiftyNotifications.xcframework archive that you can use as a dependency in Xcode.
SwiftyNotifications.xcframework is a Release (Optimized) binary that offer best available Swift code performance.
Example Usage
import SwiftyNotifications
Than initiate notification and add to your view
let notification = SwiftyNotifications.withStyle(style: .info,
title: "Swifty Notifications",
subtitle: "Highly configurable iOS UIView for presenting notifications that doesn't block the UI",
direction: .bottom)
view.addSubview(notification)
You can customize this notification anytime in your view
notification.customize(style: .warning)
and update texts
notification.setTitle(title: "New title", subtitle: "New subtitle")
To show the notification
notification.show()
To dismiss
notification.dismiss()
Creating custom notification
let customNotification = SwiftyNotifications.withStyle(style: .custom,
title: "Custom",
subtitle: "Custom notification with custom image and colors",
direction: .top)
customNotification.leftAccessoryView.image = UIImage(named: "apple_logo")!
customNotification.setCustomColors(backgroundColor: UIColor.cyan, textColor: UIColor.white)
view.addSubview(customNotification)
Other available functions for creating notifications
With a time interval option for auto dismissing
let notification = SwiftyNotifications.withStyle(style: .warning,
title: "Title",
subtitle: "Subtitle",
dismissDelay: 3.0,
direction: .top)
With touch handler
let notification = SwiftyNotifications.withStyle(style: .error,
title: "Title",
subtitle: "Subtitle",
dismissDelay: 5.0,
direction: .bottom) {
}
New class added for just displaying message
let swiftyNotificationsMessage = SwiftyNotificationsMessage.withBackgroundColor(color: UIColor.darkGray,
message: "Notification with just text",
direction: .top)
view.addSubview(swiftyNotificationsMessage)
To display message notification
swiftyNotificationsMessage.show()
Dismissing message notification
swiftyNotificationsMessage.dismiss()
Optional delegates that gives informations about showing and dismissing notification screen
func willShowNotification(notification: SwiftyNotifications)
func didShowNotification(notification: SwiftyNotifications)
func willDismissNotification(notification: SwiftyNotifications)
func didDismissNotification(notification: SwiftyNotifications)
Adding touch handler to catch tap gestures on notification
notification.addTouchHandler {
}
Add a swipe gesture recognizer to dismiss notification with a swipe direction
notification.addSwipeGestureRecognizer(direction: .down)
Possible swipe directions
Highly configurable iOS UIView for presenting notifications that doesn’t block the UI.
Screenshots
Requirements
CocoaPods
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
To integrate SwiftyNotifications into your Xcode project using CocoaPods, specify it in your Podfile:
Then, run the following command:
Carthage
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
To integrate SwiftyNotifications into your Xcode project using Carthage, specify it in your Cartfile:
Swift Package Manager
Modify your Package.swift file to include the following dependency:
XCFramework
XCFrameworks require Xcode 11 or later and integration is very similar to integration of .framework format. Please use script scripts/build-framework.sh to generate binary SwiftyNotifications.xcframework archive that you can use as a dependency in Xcode.
SwiftyNotifications.xcframework is a Release (Optimized) binary that offer best available Swift code performance.
Example Usage
Than initiate notification and add to your view
You can customize this notification anytime in your view
and update texts
To show the notification
To dismiss
Creating custom notification
Other available functions for creating notifications
New class added for just displaying message
To display message notification
Dismissing message notification
Optional delegates that gives informations about showing and dismissing notification screen
func willShowNotification(notification: SwiftyNotifications)
func didShowNotification(notification: SwiftyNotifications)
func willDismissNotification(notification: SwiftyNotifications)
func didDismissNotification(notification: SwiftyNotifications)
Adding touch handler to catch tap gestures on notification
Add a swipe gesture recognizer to dismiss notification with a swipe direction
Possible swipe directions