• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

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

[复制链接]
菜鸟教程小白 发表于 2022-12-11 19:44:55 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

设置:

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

Labels, before autoshrink

橙色包含 View :

  • 固定宽度和高度

左标签:

  • 顶部、左侧和底部约束 == 8 到 橙色 View
  • 右约束 >= 8 到 右标签
  • 横向内容拥抱未更改 (251)
  • 水平抗压强度不变 (750)
  • 自动缩小字体到最小比例 0.5

右标签:

  • 顶部、右侧和底部约束 == 8 到 橙色 View
  • 左约束 >= 8 到 左标签
  • 横向内容拥抱未更改 (251)
  • 水平抗压强度不变 (750)
  • 自动缩小字体到最小比例 0.5

我想要发生的事情:

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


实际情况:

只有 1 个标签的字体自动收缩然后被截断,我收到一个约束提示,需要使标签的 1 个抗压性高于另一个。即使满足该约束,两个标签的字体也不会自动缩小。

Labels, after autoshrink


问题:

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



Best Answer-推荐答案


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

我在一个 View 中有两个标签。此 View 被限制为 UITableViewCell。

左标签:

  • leftLabel.top = 顶部
  • leftLabel.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 = 尾随
  • rightLabel.bottom = 底部
  • rightLabel 拥抱优先级 = ( 252, 251 )
  • rightLabel 抗压优先级 = ( 750, 750 )
  • 字体大小为 20,自动收缩设置为最小字体大小 12
  • 标签的行数 = 1

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

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

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap