Awesome
SwiftNotes
A super simple wrapper around NotificationCenter.
Setup
pod 'SwiftNotes'
Or just drop SwiftNotes.swift into your project.
UIKit Notification Examples
UIKeyboard Notifications
when(.UIKeyboardDidShow) { note in
// do stuff
}
UIApplication Notifications
when(.UIApplicationDidBecomeActive) { _ in
// do stuff
}
Custom Notifications
Define A Custom Notification
// define the custom event name
extension NSNotification.Name {
static let somethingHappened = Notification.Name("somethingHappened")
}
Trigger Your Custom Notification
// send your custom event
trigger(.somethingHappened)
Respond To Your Custom Notification
when(.somethingHappened) { _ in
// do stuff
}
Extra Parameters
Trigger An Event And Include UserInfo
trigger(.somethingHappened, userInfo: ["goodTimes": true])
Trigger An Event On A Specific Sender
trigger(.updatedFromRemote, on: self)
Observe An Event On A Specific Sender
when(model, does: .updatedFromRemote) { _ in
// do stuff
}
Respond On A Specific Queue
// make sure the closure is run on the main queue
when(.somethingHappened, doOn: OperationQueue.main) _ in
// do stuff
}