Latest 4.0.0
Homepage https://github.com/recisio/IncrementableLabel
License MIT
Platforms ios 8.0, tvos 9.0, requires ARC
Authors

Travis
Language
CocoaPods
Platform
License

IncrementableLabel is the easiest way to have incrementable numbers in an UILabel!

Usage

let myIncrementableLabel = IncrementableLabel(frame: CGRect(x: 0, y: 0, width: 100, height: 50))
myIncrementableLabel.incrementFromValue(0, toValue: 100, duration: 1)

Check the sample project for advanced usage

Installation

  • iOS 8.0+
  • tvOS 9.0+

CocoaPods Installation

IncrementableLabel is available on CocoaPods. Just add the following to your Podfile:

pod 'IncrementableLabel'

Swift Package Manager

IncrementableLabel is available on SPM. Just add the following to your Package file:

import PackageDescription

let package = Package(
    dependencies: [
        .Package(url: "https://github.com/recisio/IncrementableLabel.git", majorVersion: 1)
    ]
)

Manual Installation

Just drag the Source/*.swift files into your project.

IncrementableLabel properties

var option: IncrementableLabelOptions = .linear

An options indicating how you want to perform the incrementation:

  • linear
  • easeIn
  • easeOut
  • easeInOut
typealias StringFormatter = (Float) -> String
var stringFormatter: StringFormatter?

typealias AttributedTextFormatter = (Float) -> NSAttributedString
var attributedTextFormatter: AttributedTextFormatter?

A callback closure which permits a greater control on how the text (attributed or not) is formatted between each incrementation.

var easingRate: Float = 3.0

The rate used when an option is used.

var format: String = "%d"

The format is used to set the text in the label. You can set the format to %f in order to display decimals.

public var currentValue: Double

The label’s value during the incrementation

IncrementableLabel methods

func increment(fromValue: Float, toValue: Float, duration: Float = 0.3, fromColor: UIColor? = nil, toColor: UIColor? = nil, completion: IncrementableLabelCompletion? = nil)

Starts the incrementation fromValue to toValue, and the text color changes from fromColor to toColor. The duration by default will be 0.3

func incrementFromCurrentValue(toValue: Float, duration: Float = 0.3, fromColor: UIColor? = nil, toColor: UIColor? = nil, completion: IncrementableLabelCompletion? = nil)

Starts the incrementation from the current value to toValue. The duration by default will be 0.3

func incrementFromZero(toValue: Float, duration: Float = 0.3, fromColor: UIColor? = nil, toColor: UIColor? = nil, completion: IncrementableLabelCompletion? = nil)

Starts the incrementation from zero to toValue. The duration by default will be 0.3

What’s next

  • Any suggestions?

Contribution

  • If you found a bug, open an issue
  • If you have a feature request, open an issue
  • If you want to contribute, submit a pull request

Licence

IncrementableLabel is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "IncrementableLabel",
    "module_name": "IncrementableLabel",
    "version": "4.0.0",
    "summary": "IncrementableLabel is the easiest way to have incrementable numbers in an UILabel!",
    "description": "IncrementableLabel is the easiest way to have incrementable numbers in an UILabel! Available on iOS and tVOS",
    "homepage": "https://github.com/recisio/IncrementableLabel",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "Recisio": "t[email protected]"
    },
    "source": {
        "git": "https://github.com/recisio/IncrementableLabel.git",
        "tag": "4.0.0"
    },
    "platforms": {
        "ios": "8.0",
        "tvos": "9.0"
    },
    "requires_arc": true,
    "source_files": "Source/*.swift"
}

Pin It on Pinterest

Share This