我在Flutter设置中有一个TextFormField,如下所示:

new TextFormField (
    decoration: new InputDecoration(
    labelText: questionString,
    labelStyle: new TextStyle(
      fontSize: 18.0,
      color: new Color(0xFF18776A),
    )
),

这将生成以下屏幕截图:

flutter - 如何在Flutter中处理InputDecoration-> labelText中的长文本-LMLPHP

文本由于太长而自动在结尾处剪切。有没有一种方法可以调整字体大小以适合屏幕或使labelText扩展为两行?

最佳答案

为增加一个老问题而道歉,但只是学习使自己 flutter 朔迷离,偶然发现了一个类似的问题。

我的解决方法是使用hintText而不是labelText,并显式添加\ n换行符。

就像是

String questionString = 'This sample is very \n very very very long'
new TextFormField (
    decoration: new InputDecoration(
    hintText: questionString,
    hintStyle: new TextStyle(
      fontSize: 18.0,
      color: new Color(0xFF18776A),
    ) .

),

我不喜欢这样,因为实际上很难对屏幕宽度进行编码。但是它至少给出了多行提示文本。

当我尝试在我的labelText中添加换行符时,由于labelText的下一行合并到实际的输入字段中,因此事情变得很奇怪。也许如果我能找到一种方法在其中添加填充以防止这种情况,那会更好一点吗?

08-15 19:32