接收焦点时如何删除添加到TextField中具有prefixIcon的标签的边距?

Posted

技术标签:

【中文标题】接收焦点时如何删除添加到TextField中具有prefixIcon的标签的边距?【英文标题】:How to remove the margin added to the label in TextField that has prefixIcon when receiving focus? 【发布时间】:2021-03-14 14:32:29 【问题描述】:

当 TextDield 获得焦点时,标签会收到相对于 prefixIcon 的边距。

当前

目标:


Container(
  padding: EdgeInsets.all(10),
  child: TextFormField(
    keyboardType: TextInputType.number,
    textInputAction: TextInputAction.continueAction,
    style: TextStyle(fontSize: 20),
    decoration: InputDecoration(
      alignLabelWithHint: true,
      prefixIcon: Icon(Icons.device_thermostat),
      labelText: "Temperature",
      border: OutlineInputBorder(),
      hintText: "Enter  temperature",
    ),
  ),
)

【问题讨论】:

您只想在 textField 处于焦点时添加边距?? 不,我希望图标和标签在焦点对准时具有与第二张图像相同的左侧填充。 【参考方案1】:

尝试将prefixIcon: Icon(Icons.device_thermostat), 替换为prefix: Icon(Icons.device_thermostat),。 Here 是 DartPad 上的一个示例,其中一个字段使用 prefixIcon,第二个字段使用 prefix

【讨论】:

以上是关于接收焦点时如何删除添加到TextField中具有prefixIcon的标签的边距?的主要内容,如果未能解决你的问题,请参考以下文章

使用 .focused() 点击不同视图时如何删除 TextField 焦点?

TextField 获得焦点时如何滚动到 SingleChildScrollView 的底部?

如何在 MacOS 的 SwiftUI 中向 TextEditor 添加焦点环

AppKit 上的 SwiftUI - 在弹出窗口中将焦点设置为 TextField

当initialValues通过\绑定到props.object时,如何使用Formik表单将焦点设置在TextField\input上?

从 TextField 移除焦点后如何刷新鼠标光标?