screen_config 0.1.0 copy "screen_config: ^0.1.0" to clipboard
screen_config: ^0.1.0 copied to clipboard

Easier way to handle dynamic sizes

example/lib/main.dart

import 'package:flutter/material.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:screen_config/screen_config.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: AppHome(),
    );
  }
}

class AppHome extends StatelessWidget {
  const AppHome({
    super.key,
  });

  @override
  Widget build(BuildContext context) {
    ScreenConfig.init(context);

    return Scaffold(
        body: Row(
      mainAxisAlignment: MainAxisAlignment.start,
      crossAxisAlignment: CrossAxisAlignment.start,
      children: [
        Column(
          mainAxisAlignment: MainAxisAlignment.spaceBetween,
          children: [
            Padding(
              padding: ScreenConfig.viewInsets,
              child: Container(
                color: Colors.red,
                height: ScreenConfig.safeBlockVertical * 50,
                width: ScreenConfig.safeBlockHorizontal * 50,
                child: FittedBox(
                  child: Text("50x50 safe dynamic 0.01 sized blocks"),
                ),
              ),
            ),
          ],
        ),
        Column(
          children: [
            Container(
              color: Colors.blue,
              width: ScreenConfig.screenWidth * 0.5,
              height: ScreenConfig.screenHeight * 0.5,
              child: Stack(
                children: [
                  Align(
                    alignment: Alignment.topCenter,
                    child: Text(
                      "ScreenConfig.screenWidth * 0.5%",
                      style: TextStyle(color: Colors.white),
                    ),
                  ),
                  Center(
                      child: Text(
                    "50%-50%",
                    style: TextStyle(color: Colors.white),
                  )),
                  Align(
                    alignment: Alignment.centerRight,
                    child: RotatedBox(
                      quarterTurns: 1,
                      child: Text(
                        "ScreenConfig.screenHeight * 0.5",
                        style: TextStyle(color: Colors.white),
                      ),
                    ),
                  ),
                ],
              ),
            ),
            Container(
              color: Colors.red,
              height: ScreenConfig.blockSizeVertical * 50,
              width: ScreenConfig.blockSizeHorizontal * 50,
              child: FittedBox(
                child: Text("50x50 dynamic 0.01 sized blocks"),
              ),
            ),
          ],
        ),
      ],
    ));
  }
}
0
likes
150
points
29
downloads

Publisher

unverified uploader

Weekly Downloads

Easier way to handle dynamic sizes

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on screen_config