之前可以用一个第三方插件来适配,但是呢,用于种种原因,现在自己封装一个插件,自由使用。
import 'package:flutter/widgets.dart';
/// UI适配
class SizeConfig {
static MediaQueryData _mediaQueryData;
static double screentWidth;
static double screenyHeight;
static double blockSizeHorizontal;
static double blockSizeVertical;
static double _safeAreaHorizontal;
static double _safeAreaVertical;
static double safeBlockHorizontal;
static double safeBlockVertical;
void init(BuildContext context) {
_mediaQueryData = MediaQuery.of(context);
screentWidth = _mediaQueryData.size.width;
screenyHeight = _mediaQueryData.size.height;
blockSizeHorizontal = screentWidth / 100;
blockSizeVertical = screenyHeight / 100;
_safeAreaHorizontal = _mediaQueryData.padding.left + _mediaQueryData.padding.right;
_safeAreaVertical = _mediaQueryData.padding.top + _mediaQueryData.padding.bottom;
safeBlockHorizontal = (screentWidth - _safeAreaHorizontal) / 100;
safeBlockVertical = (screenyHeight - _safeAreaVertical) / 100;
}
}
二、在对应页面初始化
/// 初始化插件
SizeConfig().init(context);
三、使用
height: SizeConfig.blockSizeHorizontal * 20;
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于