A UILabel subclass that adds animated counting support for displaying numeric values in iOS apps.
UICountingLabel is an open-source iOS library that extends UILabel to support animated counting of numeric values. It solves the problem of static number displays by providing smooth, customizable animations for transitions between values, enhancing the visual feedback in apps like fitness trackers, finance dashboards, and games.
iOS developers building apps that need to display changing numeric values with animation, such as counters, timers, scoreboards, or progress indicators.
Developers choose UICountingLabel for its simplicity—it integrates seamlessly as a UILabel subclass—and its flexibility, offering multiple animation styles and formatting options without requiring complex custom animation code.
Adds animated counting support to UILabel.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
As a drop-in UILabel subclass, it integrates seamlessly with minimal code changes; simply initialize it like a standard UILabel or set the class in XIB files, as shown in the README setup.
Supports custom format strings and format blocks, allowing for complete control over displayed text, such as converting numeric values to complex formats like years and months, demonstrated in the README examples.
Offers four animation curves (linear, ease-in, ease-out, ease-in-out) for customizable transition effects, with ease-in-out as the default, providing polished visual feedback.
Includes a completion block to execute code after animations finish, enabling chained actions or UI updates without manual timing management.
Limited to UIKit frameworks, making it incompatible with modern SwiftUI projects without additional bridging code, which adds complexity for cross-platform or newer iOS apps.
Focuses solely on numeric value transitions; lacks built-in support for animating other properties like text color or background, limiting its use for richer visual effects.
Missing features like pause/resume functionality or granular control over animation steps, which could be a drawback for interactive or complex sequencing needs.