animated_digit

Creator: coderz1093

Last updated:

Add to Cart

Description:

animated digit

English | ไธญๆ–‡็ฎ€ไฝ“

animated_digit #
Scroll animation numbers widget, any number that need animation effects and easy to use.

Usage #
๐Ÿšด๐Ÿป Easy Show
// only show
AnimatedDigitWidget(
value: 9999
),
copied to clipboard
๐Ÿš„ Easy Show & State
// simple state control
int value = 9999;
AnimatedDigitWidget(
value: value
textStyle: TextStyle(color: Colors.pink),
),
setState((){
value = 191919;
});
copied to clipboard
๐ŸŽก Controller

Built-in accuracy calculation

AnimatedDigitController _controller = AnimatedDigitController(10240.987);

AnimatedDigitWidget(
controller: _controller,
textStyle: TextStyle(color: Colors.pink),
fractionDigits: 2, // number of decimal places reserved, not rounded
enableSeparator: true, // like this 10,240.98
),
// UI Result => 10,240.98

// increment
_controller.addValue(1314);

// minus
_controller.minusValue(1314); // from v3.1.0 added

// times
_controller.timesValue(1314); // from v3.1.0 added

// divide
_controller.divideValue(1314); // from v3.1.0 added

// reset
_controller.resetValue(1314);

// last
_controller.dispose();
copied to clipboard
๐Ÿ–ผ UI Effect Image & ๐Ÿ’ป Code Example #

AnimatedDigitWidget(
value: 12531.98, // or use controller
),
copied to clipboard

AnimatedDigitWidget(
value: 12531.98, // or use controller
enableSeparator: true,
),
copied to clipboard

AnimatedDigitWidget(
value: 12531.98, // or use controller
fractionDigits: 2,
enableSeparator: true,
),
copied to clipboard

SingleDigitProvider(
data: SingleDigitData(
useTextSize: true,
builder: (size, value, isNumber, child) {
return isNumber ? child : FlutterLogo();
},
),
child: AnimatedDigitWidget(
value: 12531.98, // or use controller
textStyle: TextStyle(color: Colors.pink[200], fontSize: 30),
separateLength: 1,
separateSymbol: "#",
enableSeparator: true,
),
),
copied to clipboard

AnimatedDigitWidget(
value: 12531.98, // or use controller
textStyle: TextStyle(color: Colors.orangeAccent.shade700, fontSize: 30),
fractionDigits: 2,
enableSeparator: true,
separateSymbol: "ยท",
separateLength: 3,
decimalSeparator: ",",
prefix: "\$",
suffix: "โ‚ฌ",
),
copied to clipboard
โœŒ If you want to change color based on value #
The add a ValueColor object to valueColors, which is an array, you can add more ...๏ผŒbut always take the last eligible
int value = 9999; // or use Controller.value
AnimatedDigitWidget(
value: value,
textStyle: TextStyle(
color: Colors.orange[200],
fontSize: 30,
),
valueColors: [
ValueColor(
//When value <= 0 , the color changes to red
condition: () => value <= 0,
color: Colors.red,
),
// you can add more ...๏ผŒbut always take the last eligible.
],
),
copied to clipboard
๐Ÿณ Widget Params & Documentation #
๐Ÿš€ Required Params

โš ๏ธ value and controller cannot be both null.
โš ๏ธ controller has higher priority.



controller - digit controller, The displayed number can be controlled via addValue and resetValue.



value - the display number.



๐Ÿ‘ TextStyle And BoxStyle Setting

textStyle - the numbers text style.
boxDecoration - Use with decoration of Container.


๐Ÿ‡ Int Type(default) Or Decimal Type Setting

fractionDigits - the fraction digits, int, default 0.

๐Ÿ–Œ Example ( 1000520.98765 ):
0 => 1000520;
1 => 1000520.9;
2 => 1000520.98;
3 => 1000520.987;
N => 1000520.[N];




The default 0 means an integer, when it is a decimal, if the value is less than the fractionDigits, it will be filled with 0 to the right, and the truncation method is used, so there is no rounding.


๐Ÿ“ Numbers Free Style Setting


decimalSeparator - the decimal separator๏ผŒcan be replaced by other symbols in place of decimal separators, default ..



enableSeparator - enable digit separator. default false not enable, only true, separateLength and separateSymbol valid.

๐Ÿ–Œ Example (true): 1000520 => 1,000,520 (seealso separateLength or separateSymbol)




separateSymbol - the numbers separator symbol (only enableSeparator is true), make numbers much easier to read, default ,.

๐Ÿ–Œ Example ( 1000520 ):
, => 1,000,520
' => 1'000'520
- => 1-000-520




separateLength - the numbers separator length (only enableSeparator is true), separateSymbol by separator length insert, default 3.

๐Ÿ–Œ Example ( 1000520 ):
1 => 1,0,0,0,5,2,0
2 => 1,00,05,20
3 => 1,000,520




๐Ÿฅ Scroll Animation Setting

duration - the animate duration, default Duration(milliseconds: 300).
curve - the animate curve, default Curves.easeInOut. look animate curve.
loop - enable loop scroll animate. default true, always scroll down, not scroll up from 9 -> 0; false, scroll up and down.


๐ŸŽ Digital Size Scheme Setting


autoSize - the default true is to automatically expand and contract according to the size of the ( number / symbol ) itself, false, the text size of the number 0 is used as the container size of each number, which can ensure the same width, but it seems that there is a slight interval between 1 and other numbers ๐Ÿ˜Š .



animateAutoSize - the animation resizing. default true, false will change directly to the size of the number/symbol.



๐Ÿ’ Number prefix and suffix Setting

prefix - the text to display in front of the counter.
suffix - the text to display after the counter.


Thanks #
number_precision

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.