【发布时间】:2017-09-13 14:21:17
【问题描述】:
我在使用没有自动布局的 XIB 的应用程序时遇到问题。我不知道这是否是重要信息。
我有 2 行使用自动换行的 UILabel。在 iOS 10 中,自动换行正常工作,第一行包含一个单词 + 特殊字符,例如 & 符号。示例:
然后在 iOS 11 上,自动换行出现了某种错误,并将 & 放在第二行:
这是有问题的,因为通常安装在第二行的较长单词现在没有正确显示。知道发生了什么变化吗?我知道 safeArea 但它看起来不像是原因。任何想法如何将与符号移动到顶部有足够空间的地方?
【问题讨论】:
-
我刚刚遇到了同样的问题,只能猜测:iOS 11 中的文本换行算法似乎发生了变化,因此结果更加平衡/看起来更加盒装。
-
看起来我们也有同样的问题。这似乎是一个错误,因为 UILabel 历来被用于我们想要模拟典型文字处理器(或 Web 浏览器)自动换行的情况,而不是找出可以容纳所有文本的最小框。
-
我看到了同样的问题(使用&符号)。如果我使用 Xcode 8(针对 iOS 10)构建应用程序,然后在 iOS 11 上运行该构建,我会看到新的自动换行行为。因此,即使在概念上提供与 iOS 10 应用程序的向后兼容性时,iOS 11 的自动换行也是不同的。
-
我认为强制这种行为是一个错误,最终决定向 Apple 提交 36021540。如果有其他人提供文件,您可以参考这个。
-
这个问题来自 ios 11