TSMessages alternatives and similar libraries
Based on the "Alerts" category.
Alternatively, view TSMessages alternatives based on common mentions on social networks and blogs.
-
JDStatusBarNotification
Highly customizable & feature rich notifications. Interactive dismiss. Custom Views. SwiftUI. Tap-to-hold. Progress. Written in Swift, compatible for ObjC! -
NotificationBanner
The easiest way to display highly customizable in app notification banners in iOS -
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. -
RMDateSelectionViewController
This is an iOS control for selecting a date using UIDatePicker in an UIAlertController like manner -
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. -
Swift-Prompts
A Swift library to design custom prompts with a great scope of options to choose from. -
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. -
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) -
RMPickerViewController
This is an iOS control for selecting something using UIPickerView in an UIAlertController like manner -
BPStatusBarAlert
BPStatusBarAlert is a library that allows you to easily make text-based alert that appear on the status bar and below navigation bar. -
RAlertView
AlertView, Ios popup window, A pop-up framework, Can be simple and convenient to join your project. IOS 提示框,IOS弹框,IOS弹窗 -
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.
SaaSHub - Software Alternatives and Reviews
* 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 TSMessages or a related project?
README
Notice: TSMessages is no longer being maintained/updated. We recommend everyone migrate to RMessage.
This repository will be kept as is for those who want to continue using TSMessages or are in the process of migrating. If an issue you submitted to TSMessages still applies to RMessage feel free to create a new issue in RMessage's repository.
If your project is Swift based, you might want to check out SwiftMessages, which offers the same features, but is written completely in Swift.
TSMessages
This library provides an easy to use class to show little notification views on the top of the screen. (à la Tweetbot).
The notification moves from the top of the screen underneath the navigation bar and stays there for a few seconds, depending on the length of the displayed text. To dismiss a notification before the time runs out, the user can swipe it to the top or just tap it.
There are 4 different types already set up for you: Success, Error, Warning, Message (take a look at the screenshots)
It is very easy to add new notification types with a different design. Add the new type to the notificationType enum, add the needed design properties to the configuration file and set the name of the theme (used in the config file and images) in TSMessagesView.m inside the switch case.
Take a look at the Example project to see how to use this library. You have to open the workspace, not the project file, since the Example project uses cocoapods.
Get in contact with the developer on Twitter: KrauseFx (Felix Krause)
Installation
From CocoaPods
TSMessages is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "TSMessages"
Manually
Copy the source files TSMessageView and TSMessage into your project. Also copy the TSMessagesDesignDefault.json.
Usage
To show notifications use the following code:
[TSMessage showNotificationWithTitle:@"Your Title"
subtitle:@"A description"
type:TSMessageNotificationTypeError];
// Add a button inside the message
[TSMessage showNotificationInViewController:self
title:@"Update available"
subtitle:@"Please update the app"
image:nil
type:TSMessageNotificationTypeMessage
duration:TSMessageNotificationDurationAutomatic
callback:nil
buttonTitle:@"Update"
buttonCallback:^{
NSLog(@"User tapped the button");
}
atPosition:TSMessageNotificationPositionTop
canBeDismissedByUser:YES];
// Use a custom design file
[TSMessage addCustomDesignFromFileWithName:@"AlternativeDesign.json"];
You can define a default view controller in which the notifications should be displayed:
[TSMessage setDefaultViewController:myNavController];
You can define a default view controller in which the notifications should be displayed:
[TSMessage setDelegate:self];
...
- (CGFloat)messageLocationOfMessageView:(TSMessageView *)messageView
{
return messageView.viewController...; // any calculation here
}
You can customize a message view, right before it's displayed, like setting an alpha value, or adding a custom subview
[TSMessage setDelegate:self];
...
- (void)customizeMessageView:(TSMessageView *)messageView
{
messageView.alpha = 0.4;
[messageView addSubview:...];
}
You can customize message view elements using UIAppearance
#import <TSMessages/TSMessageView.h>
@implementation TSAppDelegate
....
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//If you want you can overidde some properties using UIAppearance
[[TSMessageView appearance] setTitleFont:[UIFont boldSystemFontOfSize:6]];
[[TSMessageView appearance] setTitleTextColor:[UIColor redColor]];
[[TSMessageView appearance] setContentFont:[UIFont boldSystemFontOfSize:10]];
[[TSMessageView appearance]setContentTextColor:[UIColor greenColor]];
[[TSMessageView appearance]setErrorIcon:[UIImage imageNamed:@"NotificationButtonBackground"]];
[[TSMessageView appearance]setSuccessIcon:[UIImage imageNamed:@"NotificationButtonBackground"]];
[[TSMessageView appearance]setMessageIcon:[UIImage imageNamed:@"NotificationButtonBackground"]];
[[TSMessageView appearance]setWarningIcon:[UIImage imageNamed:@"NotificationButtonBackground"]];
//End of override
return YES;
}
The following properties can be set when creating a new notification:
- viewController: The view controller to show the notification in. This might be the navigation controller.
- title: The title of the notification view
- subtitle: The text that is displayed underneath the title (optional)
- image: A custom icon image that is used instead of the default one (optional)
- type: The notification type (Message, Warning, Error, Success)
- duration: The duration the notification should be displayed
- callback: The block that should be executed, when the user dismissed the message by tapping on it or swiping it to the top.
Except the title and the notification type, all of the listed values are optional
If you don't want a detailed description (the text underneath the title) you don't need to set one. The notification will automatically resize itself properly.
Screenshots
iOS 7 Design
iOS 6 Design
License
TSMessages is available under the MIT license. See the LICENSE file for more information.
Recent Changes
Can be found in the releases section of this repo.
*Note that all licence references and agreements mentioned in the TSMessages README section above
are relevant to that project's source code only.