You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何设置约束实现双Label自适应布局且避免重叠?

双Label水平自适应布局解决方案

一、基础约束设置

  • 左侧Label(leftLabel):
    • 左边缘与父视图左边缘设固定间距(如16pt)
    • 垂直方向按需设置(如顶部与父视图间距16pt)
  • 右侧Label(rightLabel):
    • 右边缘与父视图右边缘设固定间距(如16pt)
    • 垂直方向与leftLabel对齐(如顶部对齐)
  • 间距约束:添加leftLabel.trailing <= rightLabel.leading - 8pt,确保两个Label之间最小间距为8pt,永不重叠

二、宽度约束与优先级配置

  • 给两个Label添加宽度相等约束,优先级设为750(低于系统默认的1000,允许内容不多时被打破)
  • 调整布局优先级:
    • 两个Label的Horizontal Content Hugging Priority(水平内容拥抱优先级)设为251(略高于系统默认的250,让Label优先保持自身内容宽度)
    • 两个Label的Horizontal Compression Resistance Priority(水平压缩抗拒优先级)设为749(低于宽度相等约束的750,允许Label在空间不足时被压缩)

三、Label属性设置

  • 将两个Label的numberOfLines设为1(单行显示)
  • 设置lineBreakMode为.byTruncatingTail(内容过长时尾部截断,也可按需选择.byTruncatingMiddle或.byTruncatingHead)

布局逻辑说明

  • 当两个Label内容都较少时:内容拥抱优先级高于宽度相等约束,Label会根据自身内容自适应宽度,同时保持最小间距,不会重叠
  • 当任一Label内容过多时:压缩抗拒优先级低于宽度相等约束,空间不足时Label会被压缩并触发内容截断,同时强制保持宽度相等(均分剩余可用空间),确保两者始终不重叠

内容的提问来源于stack exchange,提问作者Maverick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:52:50