flutter_custom_utils 0.1.3 flutter_custom_utils: ^0.1.3 copied to clipboard
It is designed to simplify code and support utilities for personal and commercial use
-
For duration and delay
void main() async { await 0.7.cSeconds.cDelay(() {}) }
-
Get the MediaQuery
context.cMediaQuerySize // getSize(context) context.cWidth context.cHeight context.cTheme context.cIsDarkMode context.cIconColor context.cTextTheme context.cOrient // orientation context.cIsLand // landscape context.cIsPort // portrait context.cDevicePixelRatio
Make a
responsive gridview
by using both1 and 2
-
Based on your static design's
width
, calculate the responsivegrid item count
.crossAxisCount: getResCrosCountGrid( context: context, width: 180, ),
-
For responsive grid item
aspect ratio
, it should be derived from your static design based onheight
andwidth
.childAspectRatio: getResGridRatio( context: context, height: 165, width: 180, ),
-
For normal grid
aspect ratio
Having this aspect ratio will never break in larger or smaller devices
crossAxisCount: 2, childAspectRatio: getGridRatio( crossAxisCount: 2, context: context, height: 165, width: 180, ),
Your provided
height
andwidth
determine how it works
-
Get color from hash code
CHColor.fromHex('#fffff')
-
Get hash code from color
Color.fromRGBO(250, 250, 250, 0.1).toHex()
-
All
(padding/margin)
@override Widget build(BuildContext context) { return Container( child: Text('data').cPadAll(10) // cMargAll ); }
-
Only
(padding/margin)
@override Widget build(BuildContext context) { return Container( child: Text('data').cPadOnly( l: 10, r: 10, t: 10, b: 10, ), // cMargOnly ); }
-
Symmetric
(padding/margin)
@override Widget build(BuildContext context) { return Container( child: Text('data').cPadSymmetric( h: 10, v: 10, ), // cMargSymmetric ); }
-
Zero
(padding/margin)
@override Widget build(BuildContext context) { return Container( child: Text('data').cPadZero, // cMargZero ); }
-
Allows you to insert widgets inside a
CustomScrollView
Text('data').cToSliver
-
Allows you to handle
Visibility
andOpacity
Text('data').cVisible(true) Text('data').cOpacity(0.3)
-
Allows you to handle Alignment
Text('data').cAlignment(Alignment.topCenter) Text('data').cToCenter Text('data').cExpand(2)