handle文本表单字段中的文本输入操作新行



连续两个新行后如何将TextInputAction.newLine更改为TextInputAction.done,在选择了许多连续的新线路后,我需要退出新线路

一种解决方案是在StatefulWidget中使用状态变量:

bool _done = false;

听编辑后的文本:

TextField(
onChanged(s) {
if (s.substring(s.length - 2) == "nn") setState(() => _done = true);
else setState(() => _done = false);
}
)

并相应地更改TextInputAction

TextField(
onChanged(s) {
if (s.substring(s.length - 2) == "nn") setState(() => _done = true);
else setState(() => _done = false);
},
textInputAction: _done ? TextInputAction.done : TextInputAction.newLine
)

最新更新