flexify
Flexify는 반응형 디자인과 간편한 탐색을 위한 Flutter 패키지입니다. 어떤 화면 크기에도 인터페이스를 쉽게 적응시키고 사용자 정의 가능한 애니메이션으로 부드러운 페이지 전환을 제공합니다.
이 Flutter 패키지는 애플리케이션을 다양한 화면 크기에 맞게 쉽게 조정할 수 있도록 도와줍니다. 사용하기 쉽고, 개발자가 장치의 치수에 따라 인터페이스를 자동으로 조정할 수 있는 기능을 제공합니다. 이 패키지를 사용하면 작은 휴대폰부터 큰 태블릿까지 모든 기기에서 앱이 멋지게 보입니다.
{"sdk":"flutter"}{"sdk":"flutter"}^4.0.0아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.
Flexify is a comprehensive Flutter package that simplifies the creation of responsive user interfaces and enhances navigation with customizable animations. It allows you to easily adapt your app's layout to various screen sizes while providing a smooth and visually appealing navigation experience. With Flexify, scaling widgets proportionally and implementing advanced navigation transitions become effortless, making it an indispensable tool for Flutter developers.
MaterialApp and CupertinoApp.Add the following line to your pubspec.yaml file:
dependencies:
flexify: ^2.1.1
import 'package:flutter/material.dart';
import 'package:flexify/flexify.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
//Wrap your app with Flexify for initialize
return Flexify(
designWidth: 375,
designHeight: 812,
app: MaterialApp(
home: ExampleScreen(),
),
);
}
}
class FlexifyResponsiveWidget extends StatelessWidget {
const ExampleScreen({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
width: 250.rw, //responsive width
height: 250.rh, //responsive height
decoration: BoxDecoration(
color: Colors.blue,
borderRadius: BorderRadius.circular(25.rs), // responsive size
),
child: Center(
child: Text(
'This is a Responsive Text',
style: TextStyle(
fontSize: 22.rt, // responsive font-size
fontWeight: FontWeight.w700,
),
),
),
),
20.verticalSpace, // SizedBox(height:20.rh) responsive vertical space
20.horizontalSpace, // SizedBox(width: 20.rw) responsive horizontal space
],
),
),
);
}
}
Flexify.go(
NewScreen(),
animation: FlexifyRouteAnimations.fade,
duration: Duration(milliseconds: 500),
);
Flexify.goRemove(
NewScreen(),
animation: FlexifyRouteAnimations.slide,
duration: Duration(milliseconds: 500),
);
Flexify.goRemoveAll(
NewScreen(),
animation: FlexifyRouteAnimations.scale,
duration: Duration(milliseconds: 500),
);
Flexify.back();
FlexifyRouteAnimations.fade
FlexifyRouteAnimations.slide
FlexifyRouteAnimations.scale
FlexifyRouteAnimations.rotate
FlexifyRouteAnimations.zoom
FlexifyRouteAnimations.size
FlexifyRouteAnimations.elastic
FlexifyRouteAnimations.flip
FlexifyRouteAnimations.slideFromBottom,
FlexifyRouteAnimations.customFadeScale,
FlexifyRouteAnimations.blur,
FlexifyRouteAnimations.slideAndFade,
FlexifyRouteAnimations.rotateAndScale,
FlexifyRouteAnimations.flipAndFade,