ios - 具有自动布局的多行UILabel,如何在不更改标签框架的情况下根据内容调整字体大小?

标签 ios iphone uilabel autolayout

我有一个多行UILabel,它将在运行时显示内容,内容可能只需要1行或最多3行。

当内容较少时,我希望标签使用较大的字体,而当内容较多时,我希望标签使用多行且字体较小。

由于自动版式,我无法设置UILabel的框架,并且标签的框架直到运行时才是未知的,因此它可以与其他设备兼容。

目前,我将标签的行号设置为固定的数字,当内容较多时,会将内容分为多行,但是当内容较少时,单行使用的字体大小与内容较多时的字体大小一样小。这不是最好的体验。

最佳答案

设置行数和字体比例因子0.5或0.75

如果您的内容很小,它将使用占用的行,并且字体大小将为实际大小。当您的内容增长时,这些属性将检查是否可以使用实际的字体大小将内容调整为所有行。如果它不能完全调整大小,则将调用contentview中的字体进行调整。

关于ios - 具有自动布局的多行UILabel,如何在不更改标签框架的情况下根据内容调整字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27479454/

相关文章:

ios - 后台 UILocalNotification - iOS 9

ios - UIStackView,2 个标签 : Change Axis based on size

ios - 根据设备屏幕 iPhone 4/5 和 iPhone 6/Plus 调整 UILabel 的字体大小

ios - 使用自动布局在 UICollectionView 中指定单元格的一维

ios - 我们是否仍支持 iPhone 3.5 英寸屏幕以满足应用商店指南?

ios - 将日期字符串表示为 UTC 日期并将其转换为本地时区

css - 导航页面时如何使标题和水平菜单保持一致

iphone - 带有参数的方法上的 OCMock 并返回一个值

php - 我的应用程序正在向服务器发送 XML 文件 : need some guidance on writing a PHP script to parse the XML file

ios - 触发 IBAction 时更新用于创建 UITableView 的数组数据