我注意到UILabel并不能公平地换行。它将最后一个短单词(10 个或更少字符)粘贴到前一个单词上,并将它们一起移到第二行。
标签#1:第一行有足够的空间容纳单词“七”(如预期)。
标签#2:添加了一个“短”单词,并且单词“七”迁移到第二行(我想避免这种行为)。
标签#3:最后一个单词包含 10 个字符,但仍被标签视为“短”。
标签#4:最后一个单词包含 11 个字符,现在与返回第一行的单词“7”分离(如预期)。
看起来,苹果公司正在与“寡妇”作斗争,并通过这种行为迫使其采用“良好的排版”。但有时候我并不需要这样的照顾。那么,如何防止UILabel将最后一个单词粘到前一个单词上呢?
小智 -2
iOS/macOS 上的大多数字体都是成比例的,并且字体系统尝试使用良好的排版标准。因此,字符和/或排版将根据周围的其他字符、行长等改变间距。为了获得更可预测的文本显示,请使用具有固定间距的字体,例如 Monaco 或其他固定间距字体。这将产生更加可预测的显示。
以下是 Apple 的排版指南:
https://developer.apple.com/design/ human-interface-guidelines/ios/visual-design/typography/
| 归档时间: |
|
| 查看次数: |
1985 次 |
| 最近记录: |