v2.3.2scaled_app
UIデザイン全体を比例的にスケーリングし、UIデザインの幅が固定されている場合に便利です。
UIデザイン全体を比例的にスケーリングし、UIデザインの幅が固定されている場合に便利です。
以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。
Scale the entire UI design proportionally.
Button, image, font, every widget is scaled simultaneously.
Before:
After:
This package is sponsored by 庞征博引, which breaks complex subjects into 5–10 minute reads you work through, and ask questions about, at your own pace.
https://lastmonopoly.github.io/flutter_web_app/scaled_app_demo/
Use this package in your Flutter app when:
Firstly, replace runApp with runAppScaled
void main() {
// 1st way to use this package
runAppScaled(const MyApp(), scaleFactor: (deviceSize) {
// screen width used in your UI design
const double widthOfDesign = 375;
return deviceSize.width / widthOfDesign;
});
}
Or, replace WidgetsFlutterBinding with ScaledWidgetsFlutterBinding
void main() {
// 2nd way to use this package
// Scaling will be applied based on [scaleFactor] callback.
ScaledWidgetsFlutterBinding.ensureInitialized(
scaleFactor: (deviceSize) {
// screen width used in your UI design
const double widthOfDesign = 375;
return deviceSize.width / widthOfDesign;
},
);
runApp(const MyApp());
}
Then, use MediaQueryData.scale to scale size, viewInsets, viewPadding, etc.
class PageRoute extends StatelessWidget {
const PageRoute({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MediaQuery(
data: MediaQuery.of(context).scale(),
child: const Scaffold(...),
);
}
}
Optionally, update ScaledWidgetsFlutterBinding.instance.scaleFactor to enable / disable scaling on demand.
https://juejin.cn/post/7078816723666731021
依存関係一覧 3 件
{"sdk":"flutter"}{"sdk":"flutter"}^6.0.0用途で絞り込み、開発状況を比較し、採用前に元のリポジトリで要件を確認しましょう。
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗