iphone - 当 -adjustsFontSizeToFitWidth 设置为 YES 时,如何计算 UILabel 的字体大小?

标签 iphone cocoa-touch uikit uilabel

myLabel.adjustsFontSizeToFitWidth = YES时,UILabel将自动调整字体大小,以防文本对于标签来说太长。例如,如果我的标签只有 100px 宽,并且我的文本太长,无法适应当前的字体大小,它会缩小字体大小,直到文本适合标签。

当字体大小缩小时,我需要从 UILabel 获取实际显示的字体大小。例如,假设我的字体大小实际上是 20,但 UILabel 必须将其缩小到 10。当我向 UILabel 询问字体和字体大小时,我得到的是旧字体大小 (20),但不是显示的字体大小(10).

最佳答案

我不确定这是否完全准确,但希望它应该非常接近。它可能不会考虑截断的字符串或标签的高度,但您可以手动执行此操作。

方法

- (CGSize)sizeWithFont:(UIFont *)font minFontSize:(CGFloat)minFontSize actualFontSize:(CGFloat *)actualFontSize forWidth:(CGFloat)width lineBreakMode:(UILineBreakMode)lineBreakMode

将返回文本大小,请注意它还有一个实际使用的字体大小的引用参数。

关于iphone - 当 -adjustsFontSizeToFitWidth 设置为 YES 时,如何计算 UILabel 的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2396715/

相关文章:

ios - 尝试与自动布局对齐

cocoa-touch - 哪个事件处理对象成为/失去第一响应者状态?

iphone - 如何使用 UIGraphicsBeginImageContextWithOptions?

ios - UICollectionViewHeader 中的 UIButton 不起作用

ios - 如何使用透明导航栏和工具栏正确地动画推送 View Controller ?

ios - 在不混合的情况下使不透明的 UIView 变暗

ios - iOS 中的 Google map 不显示多个图钉

iphone - 如何移动 Interface Builder 放置的文本字段和按钮

ios - DrawRect 超出 View 范围

ios - 通过 cocoapods 安装的 Sharekit 现在不共享 facebook 和 twitter