我正在尝试在Flutter中更改容器内的文本大小。我发现的每种解决方案都能将文本扩展到框的边缘,在不同的设备上看起来都很好。让文本适合不同的设备大小的最佳方法是什么?
uujelgoq1#
使用BoxFit.scaleDown并固定FontSize,您可以调整字体的最大大小。正常用途低于代码
BoxFit.scaleDown
Flexible( child: FittedBox( fit: BoxFit.contain, child: AutoSizeText( 'your specific text', maxLines: 1, style: TextStyle(), ), ), ),
如果内容很小,它将以指定的字体大小占用最小宽度。同时,如果内容很大,它将调整为最小字体大小。
FittedBox( fit: BoxFit.scaleDown, child: Text( "Text here", style: TextStyle(fontSize: 18), ),)
如果需要文本填充整个宽度,则使用任何字体大小,请使用BoxFit.cover
BoxFit.cover
FittedBox( fit: BoxFit.cover, child: Text( "Text here", //style: TextStyle(fontSize: 18), ),)
您还可以使用此软件包auto_size_text: ^3.0.0
1条答案
按热度按时间uujelgoq1#
使用
BoxFit.scaleDown
并固定FontSize,您可以调整字体的最大大小。正常用途低于代码
如果内容很小,它将以指定的字体大小占用最小宽度。同时,如果内容很大,它将调整为最小字体大小。
如果需要文本填充整个宽度,则使用任何字体大小,请使用
BoxFit.cover
您还可以使用此软件包
auto_size_text: ^3.0.0