class HYSizeFit {
static MediaQueryData _mediaQueryData;
staticdouble screenWidth;
staticdouble screenHeight;
staticdouble rpx;
staticdouble px;
staticvoid initialize(BuildContext context, {double standardWidth = 750}) {
_mediaQueryData = MediaQuery.of(context);
screenWidth = _mediaQueryData.size.width;
screenHeight = _mediaQueryData.size.height;
rpx = screenWidth / standardWidth;
px = screenWidth / standardWidth * 2;
}
// 按照像素来设置
staticdouble setPx(double size) {
return HYSizeFit.rpx * size * 2;
}
// 按照rxp来设置
staticdouble setRpx(double size) {
return HYSizeFit.rpx * size;
}
}
也可以通过第三方库来解决
屏幕适配也可以使用第三方库:flutter_screenutil
-
https://github.com/OpenFlutter/flutter_screenutil