Loaf π alternatives and similar libraries
Based on the "Alerts" category.
Alternatively, view Loaf π alternatives based on common mentions on social networks and blogs.
-
SwiftMessages
A very flexible message bar for iOS written in Swift. -
SCLAlertView-Swift
Beautiful animated Alert View. Written in Swift -
TSMessages
π Easy to use and customizable messages/notifications for iOS Γ la Tweetbot -
NotificationBanner
The easiest way to display highly customizable in app notification banners in iOS -
JDStatusBarNotification
Highly customizable & feature rich notifications displayed below the status bar. iOS 13+. Swift ready! -
CRToast
A modern iOS toast view that can fit your notification needs -
Toast-Swift
A Swift extension that adds toast notifications to the UIView object class. -
Whisper
:mega: Whisper is a component that will make the task of display messages and in-app notifications simple. It has three different views inside -
PMAlertController
PMAlertController is a great and customizable alert that can substitute UIAlertController -
Jelly
π - Jelly is a library for animated, non-interactive & interactive viewcontroller transitions and presentations with the focus on a simple and yet flexible API. -
RKDropdownAlert
iOS / Objective C: an extremely simple UIAlertView alternative -
RMDateSelectionViewController
This is an iOS control for selecting a date using UIDatePicker in an UIAlertController like manner -
BRYXBanner
A lightweight dropdown notification for iOS 7+, in Swift. -
CDAlertView
Highly customizable alertview and alert/notification/success/error/alarm popup written in Swift -
CFAlertViewController
It is a highly configurable iOS library which allows easy styling with built in styles as well as extra header and footer views so that you can make extremely unique alerts and action sheets. -
SwiftNotice
GUI library for displaying various popups (HUD), written in pure Swift. -
FCAlertView
FCAlertView is a Flat Customizable AlertView for iOS (Written in Objective C) -
NZAlertView
Simple and intuitive alert view. Similar to push notification effect. -
SwiftyDrop
Lightweight dropdown message bar in Swift. It's simple and beautiful. -
Swift-Prompts
A Swift library to design custom prompts with a great scope of options to choose from. -
NYAlertViewController
Highly configurable iOS Alert Views with custom content views -
TTGSnackbar
TTGSnackbar shows simple message and action button on the bottom or top of the screen with multi kinds of animation, which is written in Swift3 and inspired by Snackbar in Android. It also support showing custom view, icon image or multi action button. -
SwiftOverlays
SwiftOverlays is a Swift GUI library for displaying various popups and notifications -
RMActionController
This is an iOS control for presenting any UIView in an UIAlertController like manner -
DOAlertController
Simple Alert View written in Swift, which can be used as a UIAlertController. (AlertController/AlertView/ActionSheet) -
SimpleAlert
Customizable simple Alert and simple ActionSheet for Swift -
RMPickerViewController
This is an iOS control for selecting something using UIPickerView in an UIAlertController like manner -
HDNotificationView
Emulates the native Remote Notification View. -
NoticeBar
πA simple NoticeBar written by Swift 3, similar with QQ notice view. -
LNRSimpleNotifications
Simple Swift in-app notifications -
CustomizableActionSheet
Action sheet allows including your custom views and buttons. -
LKAlertController
An easy to use UIAlertController builder for swift -
BPStatusBarAlert
BPStatusBarAlert is a library that allows you to easily make text-based alert that appear on the status bar and below navigation bar. -
MaterialActionSheetController
A Google like action sheet for iOS written in Swift. -
RAlertView
AlertView, Ios popup window, A pop-up framework, Can be simple and convenient to join your project. IOS ζη€Ίζ‘οΌIOSεΌΉζ‘οΌIOSεΌΉηͺ -
Notie
In-app notification in Swift, with customizable buttons and input text field. -
SnowGlobeFramework
Snow globe framework is delightful / slightly cheese easter egg for christmas season. Turns your awesome app into a snow globe, when user shake the device. -
AlertViewLoveNotification
A simple and attractive AlertView to ask permission to your users for Push Notification.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Loaf π or a related project?
README
Loaf π Inspired by Android's Toast, Loaf is a Swifty Framework for Easy iOS Toasts
Usage
From any view controller, a Loaf can be presented by calling:
Loaf("Message goes here", sender: self).show()
Which will result in:
Bellow, I will discuss how to further customize your Loaf!
Playground
I've provided an example project to showcase uses of Loaf! Simply clone this repo, and open LoafExamples.xcodeproj
. From here you can see and experiment custom Loaf styles in Examples.swift
Customization
Basic styles
Loaf comes with 4 basic style out of the box.
Success | Error |
---|---|
Warning | Info |
---|---|
These styles can be specified in the style
property.
For instance, to use Success
styled Loaf, call it like so:
Loaf("This is a success loaf", state: .success, sender: self).show()
Custom styles
Loaf allows you to specify a custom style! This will let you set the colors, font, icon. and icon alignment. Here are some examples of custom Loaf styles!
Colors and icon | Right icon alignment | No icon |
---|---|---|
All of these properties are specified as part of custom state, like so:
Loaf("Switched to light mode", state: .custom(.init(backgroundColor: .black, icon: UIImage(named: "moon"))), sender: self).show()
Presenting and dismissing
Loaf allows you to specify the presenting and dismissing direction. The presenting direction is independant from the dismissal direction. Here are some examples:
Vertical | Left |
---|---|
![]() |
![]() |
Right | Mix |
---|---|
![]() |
![]() |
These are specified in the function signature, like so:
Loaf("Loaf message", presentingDirection: .left, dismissingDirection: .vertical, sender: self).show()
Location
Toasts are typically presented at the bottom of the screen, but Loaf allows you to also present them at the top of the screen. Here is an example of a Loaf being presented at the top of the view:
This is also specified in the function signature, like so:
Loaf("Loaf message", location: .top, sender: self).show()
Other
Specify the presentation duration. When presenting a Loaf with .show()
, a presentation duration can be specified. The default value is 4s, but there are presets for 2s and 8s. This is done by using .show(.short)
for 2s, or .show(.long)
for 8s. A custom duration can also be specified with .show(.custom(x))
, where x represents the duration in seconds.
β οΈ New in 0.5.0
:
- A completion handler can be specified in the Loaf
show()
function signature. This block will be called when the dismissal animation is completed, or when the Loaf is tapped. This completion handler is now passed with a enum representing whether the Loaf was tapped or timmed out. Here is an example of using a completion handler:
Loaf(example.rawValue, sender: self).show { dismissalType in
switch dismissalType {
case .tapped: print("Tapped!")
case .timedOut: print("Timmed out!")
}
}
- A Loaf's width can be specified via the
Style
component. The width can be specifed as a fixed size (i.e. 280px) or as a percentage of the screen's width. (i.e.0.8
-> 80%). Here is some example usage:
Loaf(example.rawValue, state: .custom(.init(backgroundColor: .black, width: .screenPercentage(0.8))), sender: self).show()
- Loaf's will now be presented above tab bars, when possible.
- Loaf's can be manually dismissed through a global method:
Loaf.dismiss(sender: self) // Where `self` is the Loaf's presenter
Installation
Cocoapods
Loaf is on Cocoapods! After setting up Cocoapods in your project, simply add the folowing to your Podfile:
pod 'Loaf'
then run pod install
from the directory containing the Podfile!
Don't forget to include import Loaf
in every file you'd like to use Loaf
Requirements
- Swift 4.2+
- iOS 9.0+
Contributing
Pull requests, feature requests and bug reports are welcome π
Thanks to @kirkbyo for helping me through the tough parts of this πͺ
Made with β€οΈ in π¨π¦ by Mat Schmid
*Note that all licence references and agreements mentioned in the Loaf π README section above
are relevant to that project's source code only.