我在Flutter设置中有一个TextFormField,如下所示:
new TextFormField (
decoration: new InputDecoration(
labelText: questionString,
labelStyle: new TextStyle(
fontSize: 18.0,
color: new Color(0xFF18776A),
)
),
这将生成以下屏幕截图:
由于太长,文本自动在结尾处剪切。有没有办法调整字体大小以适合屏幕或使labelText扩展为两行?
答案 0 :(得分:0)
您可以使用TextFormFields maxLines
属性:
new TextFormField (
maxLines: 4,
decoration: new InputDecoration(
labelText: questionString,
labelStyle: new TextStyle(
fontSize: 18.0,
color: new Color(0xFF18776A),
)
),
答案 1 :(得分:0)
道歉,添加了一个老问题,但只是学习使自己扑朔迷离,偶然发现了一个类似的问题。
我的解决方法是使用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的下一行合并到实际输入字段中,因此事情变得很奇怪。也许如果我能找到一种方法在其中添加填充以防止这种情况,那会更好一些吗?