ios - 调整大小后从 UILabel 获取 numberOfLines

标签 ios uilabel

我这样做是为了制作我的 UIlabel,将 numberOfLines 设置为 0,这样它就没有行限制:

    UILabel *nmLbl = [[UILabel alloc] initWithFrame:CGRectZero];
    [nmLbl setFont:[UIFont boldSystemFontOfSize:16.0f]];
    [nmLbl setNumberOfLines:0];
    [self addSubview:nmLbl];
    [nmLbl release];

稍后,当我知道哪个字符串进入标签时,我会像这样调整它的大小:

    nameSize = [[self name] sizeWithFont:[UIFont boldSystemFontOfSize:16.0f] constrainedToSize:maxNameSize lineBreakMode:UILineBreakModeWordWrap];
    [self.nameLabel setFrame:CGRectMake(0.0f, 0.0f, nameSize.width, nameSize.height)];
    [self.nameLabel sizeToFit];

现在,对于我的特定用途,我需要知道这最终需要多少行。

如果我访问 UILabelnumberOfLines 属性,它将始终返回 0。

有没有办法让我直接访问 UILabel 最终没有多少行 必须再次通过 label.size.height/fontHeight 来计算它?

提前谢谢你。

最佳答案

没有。 numberOfLines 是一个配置设置,而不是当前格式的反射(reflect)。

关于ios - 调整大小后从 UILabel 获取 numberOfLines,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5553318/

相关文章:

iphone - 如何在 UILabel 中添加 UILabel?

ios - 添加 UITextField 内联 UILabel(填空)

android - 请求 Cordova iOS 和 Android 的推送通知权限?

ios - 在不清除空间的情况下隐藏 iOS 7 中的状态栏?

ios - 无法在混合语言框架中导入 CommonCrypto

ios - 如何在 Swift 中打印出核心数据保存错误

objective-c - ios - Objective-c 只有 UITableView 的第一个单元格不显示我添加的标签

ios - 文本更改后 UILabel 不换行

ios - 如何在 ios objective-c 中使用 NSAttributedString 在多行标签中添加背景线

iOS 应用崩溃在线 Database().reference() of Firebase