Popularity
1.4
Stable
Activity
0.0
Stable
32
4
8

Description

A Swift library for animating labels and text fields using one line of code.

The library uses similar syntax to UIView's animate methods. It works even if there is text mixed in with numbers in the same label. The text remains intact while the digits get animated!

It works on both UILabels and UITextFields, and accepts any Numeric value (no need to type cast or convert). A completion handler lets you safely queue-up actions following the animation.

You can optionally specify animation curves and decimal points for the label.

It is completely safe to destroy or deallocate your label mid-animation, no strong reference is kept. The library is unit tested and checked for memory leaks

Programming language: Swift
License: MIT License
Tags: Animation     Core Animation     Swift     UI     Label     TextField & TextView    
Latest version: v0.1.5

QuickTicker alternatives and similar libraries

Based on the "Animation" category.
Alternatively, view QuickTicker alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of QuickTicker or a related project?

Add another 'Animation' Library

README

A Swift library for animating labels and text fields

Version License Platform Swift 4

Installation

Manually:

Simply copy the QuickTicker.Swift file to your project (it is located in QuickTicker > Classes)

Cocoapods:

QuickTicker is also available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'QuickTicker'

Features

  • Simple syntax similar to UIView's animate methods
  • It works even if there is text mixed in with numbers in the same label. Text remains intact while the digits get animated!
  • Works on both UILabels and UITextFields, and accepts any Numeric value (no need to type cast or convert)
  • Completion handler lets you safely queue-up actions following the animation
  • You can optionally specify animation curves and decimal points for the label
  • Completely safe to destroy or deallocate your label mid-animation, no strong reference is kept
  • Unit tested and checked for memory leaks

Quick Functions

You can get started with a simple one line function call

QuickTicker.animate(label: textLabel, toEndValue: 250)

The default duration is 2 seconds, but that can be easily changed

QuickTicker.animate(label: textLabel, toEndValue: 250, duration: 4.3)

You can also specify the animation curve

QuickTicker.animate(label: textLabel, toEndValue: 250, options: [.easeOut])

Advanced Quick Ticker

You can optionally specify the duration, the animation curve, decimal points, and add a completion handler to be executed at the end of the animation.

QuickTicker.animate(label: textLabel, toEndValue: 250, duration: 4.3, options: [.easeOut, .decimalPoints(2)], completion: {
                        print("Ticker animation done!")
                    })

Compatible Types

Enter any of the following types as the end value for the animation, no need to type cast!

  • [x] CGFloat
  • [x] Float
  • [x] Double
  • [x] Int
  • [x] UInt
  • [x] Int8
  • [x] UInt8
  • [x] Int16
  • [x] UInt16
  • [x] Int32
  • [x] UInt32
  • [x] Int64
  • [x] UInt64

What it looks like

Sample App:

InstaWeather:

Find My Latte:

Find My Latte:

Try it!

To run the example project, clone the repo, and launch QuickTicker.xcworkspace from the Example directory.

Requirements

  • iOS 9.0+
  • Swift 4.2 (you can run it on 4.0 by changing the CADisplayLink api call, one line of code)
  • Xcode 10 (same as above to run on older Xcode)

Author

Besher Al Maleh – [email protected]

Distributed under the MIT license. See LICENSE for more information.

https://github.com/almaleh/github-link LinkedIn

Contributing

Contributors are welcome!

  1. Fork it (https://github.com/almaleh/Quick-Ticker/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request


*Note that all licence references and agreements mentioned in the QuickTicker README section above are relevant to that project's source code only.