gpt4 book ai didi

ios - (iOS) 同时自动收缩 2 个相互约束的标签

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:10:22 25 4
gpt4 key购买 nike

设置:

我有 2 个这样设置的标签:

Labels, before autoshrink

橙色包含 View :

  • 固定宽度和高度

左标签:

  • 顶部、左侧和底部约束 == 8 到橙色 View
  • 右约束 >= 8 到右标签
  • Horizo​​ntal Content Hugging 不变 (251)
  • 水平压缩阻力不变 (750)
  • 自动将字体缩小到最小比例 0.5

右标签:

  • 顶部、右侧和底部约束 == 8 到橙色 View
  • Left constraint >= 8 to Left Label
  • Horizo​​ntal Content Hugging 不变 (251)
  • 水平压缩阻力不变 (750)
  • 自动将字体缩小到最小比例 0.5

我想要发生的事情:

当标签文本变长时,两个标签的字体在截断前一起缩小到最小字体比例(或大小)。


实际发生了什么:

只有 1 个标签的字体会自动缩小然后截断,我收到一个约束投诉,要求将其中一个标签的抗压性设置得比另一个高。即使满足该约束条件,两个标签的字体也不会自动缩小。

Labels, after autoshrink


问题:

有没有办法通过自动布局或代码让两个标签的字体先缩小,然后在需要时截断?谢谢。

最佳答案

使用 Xcode 9.2 自动布局,这对我来说是自动的。

我在一个 View 中有两个标签。此 View 受限于 UITableViewCell。

左标签:

  • leftLabel.top = 顶部
  • leftLabel.leading = leading
  • leftLabel.bottom = 底部
  • rightLabel.trailing = leftLabel.trailing + 8
  • leftLabel 拥抱优先级 = ( 251, 251 )
  • leftLabel 抗压优先级 = ( 750, 750 )
  • 字体大小为 20,自动收缩设置为最小字体大小 12
  • 标签的行数 = 1

右标签:

  • rightLabel.trailing = leftLabel.trailing + 8
  • rightLabel.top = 顶部
  • rightLabel.trailing = trailing
  • rightLabel.bottom = 底部
  • rightLabel 拥抱优先级 = ( 252, 251 )
  • rightLabel 抗压优先级 = ( 750, 750 )
  • 字体大小为 20,自动收缩设置为最小字体大小 12
  • 标签的行数 = 1

当 labelLeft 和 labelRight 的文本字符串较短时,它们之间的间距较大。当这些字符串很长时,它们之间的间距很小(正好接近 8)并且两种字体都同样缩小了。

关于ios - (iOS) 同时自动收缩 2 个相互约束的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44190564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com