Flutter TextField 的高度问题

示例


先来看一个例子:假设我们要做一个表单,左边是提示文字,右边是输入框

给出代码:

Row(
      crossAxisAlignment: CrossAxisAlignment.center,
      children: [
        Text(
          "$labelName",
          style: TextStyle(
            fontSize: 16,
            fontWeight: FontWeight.bold,
          ),
        ),
        Expanded(
          child: TextField(
            obscureText: true,
            style: TextStyle(
              fontSize: 16,
            ),
            decoration: InputDecoration(
              border: OutlineInputBorder(),
              hintText: "$hintText",
            ),
          ),
        )
      ],
    )

可以看到 输入框的高度显然有点太高了 😐

问题解决


TextFieldInputDecoration 填加 isDense 属性:

...
decoration: InputDecoration(
  contentPadding: EdgeInsets.symmetric(horizontal: 10, vertical: 10),
  border: OutlineInputBorder(),
  hintText: "$hintText",
  isDense: true,
),
...

完成后就可以通过调节 contentPadding 的大小来设置输入框的内边距了 😎

posted @ 2023-02-05 11:21  HuStoking  阅读(1025)  评论(0编辑  收藏  举报