EdgeInsets.symmetric技巧

EdgeInsets.symmetric 是 Flutter 中用来创建对称内边距的便捷方法。

基本用法

EdgeInsets.symmetric(
  horizontal: 12,  // 左右各 12
  vertical: 8,     // 上下各 8
)

这等价于:

EdgeInsets.only(
  left: 12,
  right: 12,
  top: 8,
  bottom: 8,
)

可视化理解

        ↑ vertical: 8
        |
← 12 →  [  内容区域  ]  ← 12 →  horizontal
        |
        ↓ vertical: 8

在你的代码中

第一处:外层容器

padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8)
  • 左右留白 12 像素
  • 上下留白 8 像素
  • 让地址栏不会紧贴屏幕边缘

第二处:输入框内部

contentPadding: const EdgeInsets.symmetric(
  horizontal: 16,
  vertical: 12,
)
  • 文字距离输入框左右边缘 16 像素
  • 文字距离输入框上下边缘 12 像素
  • 让文字有足够的呼吸空间

EdgeInsets 的其他常用方法

// 所有方向相同
EdgeInsets.all(16)  // 上下左右都是 16

// 只设置某些方向
EdgeInsets.only(
  left: 10,
  top: 20,
  right: 10,
  bottom: 20,
)

// 从 LTRB(左上右下)创建
EdgeInsets.fromLTRB(10, 20, 10, 20)

// 零内边距
EdgeInsets.zero

为什么用 symmetric?

  1. 代码简洁:不用重复写相同的值
  2. 语义清晰:一眼看出是对称设计
  3. 易于维护:修改时只需改一个值

在你的地址栏中,symmetric 让组件看起来平衡美观,符合 Material Design 的设计规范。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容