最近遇到个问题 刚开始是根据设计图写的字体大小 但是到我手机上都是非常小的文字 后来找到问题是因为我的手机系统字体比较小 习惯了 我的Android Studio字体也是比较小的
微信图片_20190618163743.png
我当时使用的方法有这几个
1.flutter_screenutil 我使用的是这个适配屏幕的包
image.png这个的使用方法是在设置设计图宽高的时候设置allowFontScaling 默认是false
image.png
不过可能是我的使用方法有错误吧 不知道为什么 总是设置不成功
2.修改Text的textScaleFactor为1
这个方法是修改系统text的属性 这个是成功的
但是我当时使用了很多 为了以后迭代方便 管理方便我是用了下边的方法
3.自定义text
import 'package:flutter/material.dart';
import 'package:flutter_app2/View/FixedSizeText.dart';
class FixedSizeText extends Text {
const FixedSizeText(String data, {
Key key,
TextStyle style,
StrutStyle strutStyle,
TextAlign textAlign,
TextDirection textDirection,
Locale locale,
bool softWrap,
TextOverflow overflow,
double textScaleFactor = 1,
int maxLines,
String semanticsLabel,
}) : super(data,
key:key,
style:style,
strutStyle:strutStyle,
textAlign:textAlign,
textDirection:textDirection,
locale:locale,
softWrap:softWrap,
overflow:overflow,
textScaleFactor:textScaleFactor,
maxLines:maxLines,
semanticsLabel:semanticsLabel);
}
继承与Text 然后重点是这一行代码
double textScaleFactor = 1,
然后在布局Widget的时候使用FixedSizeText代替Text就可以达到禁止字体大小跟随系统字体改变大小目的了
网友评论