作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
与 iOS 10 相比,iOS 11 是否更改了内容拥抱和抗压缩 API?这是我在 iOS 10 上运行的设置:
标签 1 标题很短,标签 2 创建额外的宽度来填充空间。
[[标签 1][标签 2------------]]
标签 1 标题很长,标签 2 缩小(但不截断!)以为标签 1 腾出空间。
[[很长的标签 t...][标签 2]]
我为此使用的唯一约束是前导和尾随。没有宽度,也没有什么特别的。它的工作方式是标签 1 的内容拥抱优先级为 251,而标签 2 的内容拥抱优先级为 250。这为标签 2 提供了“创建额外宽度以填充空间”的能力。
然后,与标签 2 的 751 相比,标签 1 的抗压优先级为 750。这有助于确保标签 2 在收缩时不会被截断。
在 iOS 11 上,这停止工作。有时标签 1 会过早截断:
[[标签标题...][标签 2------]]
我假设我首先在拥抱和压缩方面做错了。否则,也许 iOS 11 改变了什么?或者最后一个选项,iOS 11 引入了一个错误。
最佳答案
是的,我也观察到了同样的事情。我有 UITableViewCell,其中有 2 个标签,并且在 iOS 11 更新后以错误的方式截断它。我已经通过在 cellForRowAtIndexPath
方法的末尾添加以下代码行来解决它。
cell?.layoutIfNeeded();
这一行就像一个魅力,因为它再次更新了您的单元格的约束。
关于ios - iOS 11 上的内容拥抱和压缩阻力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46943119/
我是一名优秀的程序员,十分优秀!