Flutter TextField标签居中问题:如何将标签移至输入框起始位置?
解决多行TextField标签居中问题
当TextField设置maxLines > 1时,默认标签会垂直居中显示。要将标签对齐输入框的起始位置,只需在InputDecoration中添加alignLabelWithHint: true属性,同时保留你已设置的floatingLabelAlignment: FloatingLabelAlignment.start即可。
修改后的完整代码:
TextField( maxLines: 10, controller: _content, decoration: const InputDecoration( floatingLabelAlignment: FloatingLabelAlignment.start, alignLabelWithHint: true, // 关键属性:让标签与输入起始位置对齐 labelText: 'Content', border: OutlineInputBorder( borderRadius: BorderRadius.all(Radius.circular(15)) ), ), )
原理说明
alignLabelWithHint: true:针对多行输入场景,强制标签与输入内容的顶部起始位置对齐,替代默认的垂直居中布局。floatingLabelAlignment: FloatingLabelAlignment.start:确保用户开始输入后,浮动的标签依然保持左对齐,不会偏移。
内容的提问来源于stack exchange,提问作者Hana.HD
相关产品推荐
相关产品推荐

