dynamic_scaler 0.0.1 copy "dynamic_scaler: ^0.0.1" to clipboard
dynamic_scaler: ^0.0.1 copied to clipboard

A Flutter package that enables dynamic scaling of widgets, images and padding

Dynamic Scaler #

A Flutter package that enables dynamic scaling of widgets, images and padding

How to use #

You can fork the full example project that uses this package here

  • Depend on the package:

    dependencies:
        dynamic_scaler: ^0.0.1
    
  • Replace the root widget of your app to Scalable():

    class MyApp extends StatelessWidget {
        @override
        Widget build(BuildContext context) {
            return Scalable(
                context: context,
                rootWidget: App(),
                printDebugFlag: true,
            );
        }
    }
    
    class App extends StatelessWidget {
        @override
        Widget build(BuildContext context) {
            return MaterialApp(
                title: 'Dynamic Scaler Demo',
                theme: ThemeData(primarySwatch: Colors.blue),
                home: MyHomePage(title: 'Dynamic Scaler'),
            );
        }
    }
    
  • Declare the device scale factors according to a particular test device:

    //Values for Nexus 5X
    double heightFactor = 6.83;
    double widthFactor = 4.11;
    
  • Use the methods by calling them using Scaler() object. For example for a container of hardcoded size 50px x 100px, this would be the code:

    Container(
        color: Colors.blue,
        height: Scaler.scaleWidgetHeight(50, heightFactor),
        width: Scaler.scaleWidgetHeight(100, widthFactor),
    )
    
  • Note: There are seperate methods for Images, Widgets and Padding types

Known Issues #

  • Doesn't preserve aspect ratios of the widgets (fix in works for a planned future update)

Want to help? #

Awesome! Fork the project and post a pull request and I'll take a look at it.

2
likes
20
pub points
0%
popularity

Publisher

unverified uploader

A Flutter package that enables dynamic scaling of widgets, images and padding

Repository (GitHub)
View/report issues

License

MIT (LICENSE)

Dependencies

flutter

More

Packages that depend on dynamic_scaler