如何防止 UILabel 将最后一个“短”单词粘到前一个单词上?

Ant*_*kov 5 uilabel ios

我注意到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/