实现TextOverflow.ellipsis和FittedBox

问题描述 投票:0回答:1

要求:如果长文本直到特定字体大小,文本字体大小应该减少,之后应该是省略号(后跟...并且应该隐藏额外的文本)。

问题:这两个功能分开工作,如下面的代码所示。

  FittedBox(
    child: Text("long text long text long text long text long text long text long text long text long text long text", 
      style: TextStyle(fontSize: 12.0)),
  )

  Text("long text long text long text long text long text long text long text long text long text long text", 
    style: TextStyle(fontSize: 12.0),
    overflow: TextOverflow.ellipsis,
  )

但如果我将这两者结合起来,它将忽略TextOverflow.ellipsis

  FittedBox(
    child: Text("long text long text long text long text long text long text long text long text long text long text", 
      style: TextStyle(fontSize: 12.0),
      overflow: TextOverflow.ellipsis),
  )

提前致谢

flutter
1个回答
0
投票

找到了!这个问题可以使用AutoSizeText解决,它将减少字体大小和溢出省略号。

例:

AutoSizeText(
  "A really long String",
  style: TextStyle(fontSize: 15.0),
  minFontSize: 8.0,
  maxLines: 1,
  overflow: TextOverflow.ellipsis,
)
© www.soinside.com 2019 - 2024. All rights reserved.