flutter_size

Creator: coderz1093

Last updated:

Add to Cart

Description:

flutter size

Language: English
This package helps the user to get width, height details of device, widgets.
Get started #
Add dependency #
dependencies:
flutter_size: ^1.0.1
copied to clipboard
Features #

Cross platform: mobile, desktop, browser
Simple, powerful, & Easy to use
NO native dependencies
Time Saving & improve productivity

Usage #
Methods #
context.width(double size) #
this method gives width to the widget, equivalent to (device_width * size).
context.height(double heightSize) #
this method gives height to the widget, equivalent to (device_height * size).

class CustomWidthAndHeight extends StatelessWidget {
const CustomWidthAndHeight({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return SafeArea(child: Scaffold(
body: Container(
color: Colors.blueGrey,
width: context.width(0.4),
height: context.height(0.3),
child: const Text("Hello World !"),
),
));
}
}

copied to clipboard
context.deviceHeight #
this method gives height of the device.
context.deviceWidth #
this method gives width of the device.

class DeviceWidthAndHeight extends StatelessWidget {
const DeviceWidthAndHeight({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return SafeArea(child: Scaffold(
body: Container(
color: Colors.red,
width: context.deviceWidth,
height: context.deviceHeight,
child: const Text("Hello World !"),
),
));
}
}

copied to clipboard
context.deviceOrientation #
this method gives the current orientation of the device.
context.totalHeight #
returns device height excluding appBar height and status bar height.
context.platformBrightness #
this method gives platform brightness of the device.
context.returnBack #
this method return previous page if the previous is available in stack and current page will removed from stack.

class DeviceOrientationAndDeviceHeightAndPlatformBrightness extends StatelessWidget {
const DeviceOrientationAndDeviceHeightAndPlatformBrightness({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return SafeArea(child: Scaffold(
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text("Device Orientation is : ${context.deviceOrientation}"),
const SizedBox(height: 40,),
Text("Device Height excluding appBar height and status bar height is : ${context.totalHeight}"),
const SizedBox(height: 40,),
Text("Platform Brightness is : ${context.platformBrightness}"),
ElevatedButton(
onPressed:(){
context.returnBack;
},
child: const Text("Go Back")
),
],
),
),
));
}
}


copied to clipboard
(double height).verticalSpaceBetweenWidgets #
returns SizedBox with height as the provided value.
(double height).heightBox #
you can also used this function for return SizedBox with height as the provided value.
(double width).horizontalSpaceBetweenWidgets #
returns SizedBox with width as the provided value.
(double width).widthBox #
you can also used this function for return SizedBox with width as the provided value.
(String value).fstLtCapitalize #
return String with first letter Capitalization

class CustomSpaceBetweenWidgets extends StatelessWidget {
const CustomSpaceBetweenWidgets({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return SafeArea(child: Scaffold(
body: Column(
children: [
const Text('hello World'.fstLtCapitalize), /// return String with first letter Capitalization
/// You can choose function acc. to you choice..
40.heightBox,
40.verticalSpaceBetweenWidgets,
Row(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text('Hello'),
/// You can choose function acc. to you choice..
40.widthBox,
45.horizontalSpaceBetweenWidgets,
const Text('World !'),
],
),
],
),
));
}
}

copied to clipboard
Dynamic Extension Understanding #
(dynamic dynamicValue).getNonNullableStringData #
returns empty String if value is null otherwise dynamic value converted to string
(dynamic dynamicValue).logPrint #
this method is showing log with dynamic value.
(dynamic dynamicValue).fieldValidator #
this function is used for validation in TextField,TextFormField widget.
it checks if value is null, is Empty then return error otherwise it return null
"Name" this value can be dynamic acc. to your choice.
if field doest not validate then its showing error like -> 'Name field can't be empty'
(dynamic dynamicValue).fieldValidator #
this function also used for validation in TextField,TextFormField widget.
it checks value is null, is Empty and also check the value must be num type in InputField otherwise it return error.
"Phone Number" this value can be dynamic acc. to your choice.
if field doest not validate then its showing error like ->
'Phone Number field can't be empty','Phone Number field should be valid number'


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

@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
body: Column(children: [
// if value is null then its return '' other value will be converted into string
Text(null.getNonNullableStringData),
ElevatedButton(
onPressed: () {
/// this function return log dynamic value for used different purposed.
/// these data will not be shown in release mode
"api value is print in log form".logPrint;
1.logPrint;
true.logPrint;
},
child: const Text('Submit'),
),
TextFormField(
//it checks value is null , is Empty then return error otherwise it return null
//"Name" this value can be dynamic acc. to your choice.
// if field doest not validate then its showing error like -> 'Name field can\'t be empty'
validator: "Name".fieldValidator,
),
TextFormField(
//it checks value is null , is Empty and also check the value must be num type in InputField otherwise it return error.
//"Phone Number" this value can be dynamic acc. to your choice.
// if field doest not validate then its showing error like ->
//'Phone Number field can\'t be empty','Phone Number field should be valid number'
validator: "Phone Number".numberfieldValidator,
),
]),
));
}
}


copied to clipboard
layoutBody class #
returns a widget with given constraints, default will be device height and device width.

import 'package:flutter_size/get_size.dart';
class ExampleScreen extends StatefulWidget {
const ExampleScreen({Key? key}) : super(key: key);

@override
State<ExampleScreen> createState() => _ExampleScreenState();
}

class _ExampleScreenState extends State<ExampleScreen> {
@override
Widget build(BuildContext context) {
return const Scaffold(
body: Center(
child: LayoutBody(
layoutBody: Text("Hlo"),
width: 0.2,
height: 0.4,
),
));
}
}

copied to clipboard
View more Examples #

License

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

Files:

Customer Reviews

There are no reviews.