Flutter:flutter_screenutil屏幕适配

1、安装flutter_screenutil

haskell 复制代码
flutter_screenutil: ^5.9.3

2、main入口修改

js 复制代码
// 新增 ScreenUtilInit()

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) :super(key: key);
  @override
  Widget build(BuildContext context) {
    return ScreenUtilInit(
      designSize: const Size(375, 812), // 设计稿中设备的尺寸(建议dp,但在使用过程中必须保持一致)
      // splitScreenMode: false, // 支持分屏尺寸
      // minTextAdapt: false, // 是否根据宽度/高度中的最小值适配文字
      
      // 一般返回一个MaterialApp类型的Function()
      builder: (context,child){
        return GetMaterialApp(
          debugShowCheckedModeBanner: false,
          title: 'Flutter Demo',
		  // 路由
          initialRoute: '/login',
          // 屏幕适配
          builder: (context, widget) {
            // 不随系统字体缩放比例
            return MediaQuery(
              data: MediaQuery.of(context).copyWith(textScaleFactor: 1.0),
              child: widget!,
            );
          },
        );
      }
    );
  }
}

3、页面中使用

单位后边加 .sp

js 复制代码
// 用到的地方都要导包
import 'package:flutter_screenutil/flutter_screenutil.dart';
SizedBox(height: 100.sp),
Center(
  child: Image(
    image: AssetImage('images/logo.png'),
    width: 100.sp,
    height: 100.sp,
  ),
),
Text('账号登录',style: TextStyle(fontSize: 16.sp),
相关推荐
前端市界11 分钟前
当20个并发请求拖垮你的应用:从TCP握手到HTTP/2的终极排错指南
前端
量子-Alex11 分钟前
【大模型与智能体论文】REACT:协同语言模型中的推理与行动
前端·react.js·语言模型
冷崖29 分钟前
QML-动画
前端
太过平凡的小蚂蚁30 分钟前
适配器模式:让不兼容的接口协同工作
java·前端·javascript
涔溪38 分钟前
在 Electron 框架中实现数据库的连接、读取和写入
javascript·数据库·electron
锈儿海老师40 分钟前
超越平台:Vercel 的野心是定义编程语言的未来吗?
前端·javascript·架构
leinchu1 小时前
Flutter + Codebuddy的坑
flutter
泷羽Sec-静安2 小时前
Less-7 GET-Dump into outfile-String
android·前端·网络·sql·安全·web安全
深入理解GEE云计算2 小时前
遥感生态指数(RSEI):理论发展、方法论争与实践进展
javascript·人工智能·算法·机器学习
IT_陈寒2 小时前
从2秒到200ms:我是如何用JavaScript优化页面加载速度的🚀
前端·人工智能·后端