所以,我的应用程序中有很多标签,就像所有东西一样,它们具有自动布局功能,它工作得很好,但对于它们内部的文本。标签布局按预期进行,但其中的文本在较小的设备中被剪切。
为了避免这种情况,我尝试在界面构建中使用 AutoShrink 选项,但它变得非常混乱,如您在图片中看到的那样:
不带自动收缩功能的 iPhone 7 模拟
没有自动收缩的 iPhone SE 模拟
使用 AutoShrink 进行 iPhone SE 模拟
因此,如您所见,所有标签彼此收缩不同,导致不同大小的文本破坏了应用程序和谐和设计。
处理这种情况的最佳方法是什么?如果我需要缩小一个标签,我该如何做到这一点,所有这些标签都会缩小到相同的大小?
您可以使用 adjustsFontSizeToFitWidth 和 minimumScaleFactor:
label.adjustsFontSizeToFitWidth = true
label.minimumScaleFactor = 0.5
这将为长字符串创建一个较小的文本。
您还可以使用NumberOfLines为标签添加更多行。
我认为第一个解决方案更适合您。