TOMSMorphingLabel alternatives and similar libraries
Based on the "Label" category.
Alternatively, view TOMSMorphingLabel alternatives based on common mentions on social networks and blogs.
-
TTTAttributedLabel
A drop-in replacement for UILabel that supports attributes, data detectors, links, and more -
LTMorphingLabel
[EXPERIMENTAL] Graceful morphing effects for UILabel written in Swift. -
ActiveLabel.swift
UILabel drop-in replacement supporting Hashtags (#), Mentions (@) and URLs (http://) written in Swift -
ZCAnimatedLabel
UILabel replacement with fine-grain appear/disappear animation -
UICountingLabel
Adds animated counting support to UILabel. -
MZTimerLabel
A handy class for iOS to use UILabel as a countdown timer or stopwatch just like in Apple Clock App. -
NumberMorphView
A label view for displaying numbers which can transition or animate using a technique called number tweening or number morphing. -
CountdownLabel
Simple countdown UILabel with morphing animation, and some useful function. -
GlitchLabel
G..lit...c...hing UILa..bel fo..r iO...S :tv: -
Preloader.Ophiuchus
Custom Label to apply animations on whole text or letters. -
THLabel
UILabel subclass, which additionally allows shadow blur, inner shadow, stroke text and fill gradient. -
ResponsiveLabel
A UILabel subclass to highlight patterns -
TriLabelView
A triangle shaped corner label view for iOS written in Swift. -
MTLLinkLabel
MTLLinkLabel is linkable UILabel. Written in Swift. -
IncrementableLabel
Incrementable UILabel for iOS and tvOS -
SlidingText
Swift UIView for sliding text with page indicator -
SwiftResponsiveLabel
A UILabel subclass to highlight patterns -
NumericAnimatedLabel
Animate numeric value while setting new value to label -
AnimatedMaskLabel
Animated Mask Label is a nice gradient animated label. This is an easy way to add a shimmering effect to any view in your app. It is useful as an unobtrusive loading indicator. -
JSLabel
A simple designable subclass on UILabel with extra IBDesignable and Blinking features.
Appwrite - The open-source backend cloud platform
* 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 TOMSMorphingLabel or a related project?
README
TOMSMorphingLabel
Configurable morphing transitions between text values of a label.
Triggering the animation is as easy as setting the labels text
property.
Demo
[Screen1](demo.gif)
Installation with CocoaPods
TOMSMorphingLabel is available through CocoaPods. To install it, simply add the following line to your Podfile:
Podfile
platform :ios, '7.0'
pod "TOMSMorphingLabel", "~> 0.5"
Usage
Instantiate TOMSMorphingLabel as you would do with an UILabel results in a fully working thus morphing label.
TOMSMorphingLabel *label = [[TOMSMorphingLabel alloc] initWithFrame:CGRectMake(0, 42, self.view.frame.size.width, 42)];
[self.view addSubview:label];
Setting - and particularly changing - the labels text property will automatically morph the labels previous text to the new value.
label.text = @"Swift";
Setting the labels text property using setText:withCompletionBlock
will morph the labels as well as triggering the completion block when the animation is finished.
[label setText:@"Swift" withCompletionBlock:^{
NSLog(@"label.text is now 'Swift'");
}];
Note that the label will execute only one morph transition at a time. If the text value of the label changes during a transition - even if it changes multiple times - the label will invoke a transition to the youngest text value that was set.
Customization
TOMSMorphingLabel provides the possibility to configure the morphing transitions look and feel. The configurable properties are defined as follows:
configurable properties animationDuration: CGFloat Time that elapses between the setting of a new text value and the end of the morphing transition. Default: 0.37 characterAnimationOffset: CGFloat Spatial propagation speed of the character shrink and alpha effect. Default: 0.25 characterShrinkFactor: CGFloat Factor that the scale of a completely disappeared character is divided by. Default: 4 morphingEnabled: BOOL Defines whether the morphing transition between text values is enabled. Default: YES
Changelog
0.5.1
- made custom configurable properties accessible by Interface Builder
0.5.0
- broke a strong reference cycle between
CADisplayLink
andTOMSMorphingLabel
- added invokation of the completion block when setting text without animations
- respect the global
[UIView areAnimationsEnabled]
state
0.2.5
- fixed a textColor glitch
- introduced
setText:withCompletionBlock:
0.2.3
- fixed a bug that caused a crash when setting text to nil
0.2.2
- added property to disable morphing
0.2.1
- added support for iOS6
0.2.0
- added unicode support
0.1.0
- initial version
Contribution & Contributors
I'd love to see your ideas for improving this library! The best way to contribute is by submitting a pull request or a new Github issue. :octocat:
- @andrebraga added support for iOS6 in version 0.2.1
- @stepanhruda added property to disable morphing in version 0.2.2
- @itouch2 fixed a bug that caused a crash when setting text to nil in version 0.2.3
- @waynehartman fixed text color-change glitch in version 0.2.5
- @cyril94440 added
setText:withCompletionBlock:
in version 0.2.5 - @wanderwaltz broke a strong reference cycle between
CADisplayLink
andTOMSMorphingLabel
in version 0.5.0 - @wanderwaltz added invokation of the completion block when setting text without animations in version 0.5.0
- @wanderwaltz made
TOMSMorphingLabel
respect the global[UIView areAnimationsEnabled]
state in version 0.5.0 - @fcanas made custom configurable properties accessible by Interface Builder
Author
License
TOMSMorphingLabel is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the TOMSMorphingLabel README section above
are relevant to that project's source code only.