【发布时间】:2018-03-27 10:07:12
【问题描述】:
我有一个这样的文本字段:
new Flexible(
fit: FlexFit.loose,
child: new Container(
alignment: FractionalOffset.topLeft,
child: new TextField(
decoration: new InputDecoration(
hintText: 'Add a note',
),
maxLines: 1,
onChanged: (value) => _showSaveOptions(value),
),
),
),
我想让我的 TextField 以 maxLines 开始设置为 1,但是当我键入时,我希望 maxLines 增加,以便所有文本都保留在页面上并且我没有向上滚动。但是,我也不想一开始就将maxLines 设置为 5 或 10,因为空的 TextField 会占用更多必要的空间。我想要实现的行为的一个示例是在 Google Forms 中的 Long Answer Text 选项中,它以一行开头:
并在我键入时扩展:
我考虑过将maxLines 设置为一个计数器,每次用户点击换行时都会递增,但我如何确定用户何时填满了一行?
【问题讨论】:
标签: textarea textfield flutter