Flutter 限制文本小部件的字符数?

Flutter 限制文本小部件的字符数?,flutter,Flutter,我正在试图找出如何在颤振文本小部件中显示省略号之前限制显示的字符数。这对我来说毫无意义,我的意思是,如果你想限制文本字符数,“省略号”根本没有任何意义,所以只需将文本限制在恒定长度内即可 final text = 'hello stack overflow'; Text(text.length > 3 ? '${text.substring(0, 3)}...' : text); 这是一个不同的问题,但我假设您不知道如何获取文本小部件的大小,以下是如何获取该大小: 根据如何计算文本何时溢

我正在试图找出如何在颤振文本小部件中显示省略号之前限制显示的字符数。

这对我来说毫无意义,我的意思是,如果你想限制文本字符数,“省略号”根本没有任何意义,所以只需将文本限制在恒定长度内即可

final text = 'hello stack overflow';
Text(text.length > 3 ? '${text.substring(0, 3)}...' : text);

这是一个不同的问题,但我假设您不知道如何获取文本小部件的大小,以下是如何获取该大小:

根据如何计算文本何时溢出边界,获取小部件的大小并将其分配给小部件的宽度,然后继续使用以下伪代码:

double widget_width = computeWidgetWidthAsShownInLinkAbove(context, text_widget);

String    sample = "This text is probably to long to fit";

TextStyle textstyle  = new TextStyle(fontSize: i);

int answer = 0;

for ( int I = 0; I < sample.length ; I = I + 1 ) {
  TextPainter textPainter = TextPainter(textDirection: TextDirection.ltr);

  textPainter.text = new TextSpan(
          text: sample.substring(0, I ), style: textstyle);

  textPainter.layout();

  if ( textPainter.width > widget_width ) {
    answer=I-1;  
    break;
  }
}
double widget_width=ComputeWidgetWidthAsShowninLinkUp(上下文,文本_widget);
String sample=“此文本可能太长,无法容纳”;
TextStyle TextStyle=新的TextStyle(字体大小:i);
int-answer=0;
对于(int I=0;Iwidget_width){
答案=I-1;
打破
}
}

这对我来说很有效,我正在寻找一种方法,使小部件可以有一个内置设置来限制最大长度。