我在向我的UILabel添加行距时遇到问题。如果我不使用行距,则在文本溢出的情况下,在第3行的末尾会得到3个点。

    UILabel *labelBlurb = [[UILabel alloc] initWithFrame:CGRectMake(marginLeft, 15+20, 295, 60)];
    [labelBlurb setNumberOfLines:3];
    [labelBlurb setText:blurb];
    [labelBlurb setLineBreakMode:NSLineBreakByTruncatingTail];
    [labelBlurb setAdjustsFontSizeToFitWidth:NO];
    [labelBlurb setTextColor:[UIColor colorWithRed:38.0/255.0 green:38.0/255.0 blue:38.0/255.0 alpha:1.0]];
    [labelBlurb setBackgroundColor:[UIColor clearColor]];
    [labelBlurb setFont:[UIFont fontWithName:@"HelveticaNeue" size:12]];
但是当我添加这样的属性文本时:
    attributedString = [[NSMutableAttributedString alloc] initWithString:blurb];
    paragraphStyle = [[NSMutableParagraphStyle alloc] init];
    [paragraphStyle setLineSpacing:3.5];
    [attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [blurb length])];
    labelBlurb.attributedText = attributedString;
    [view addSubview:labelBlurb];
最后的三个点消失。添加attributedText时,如何防止3个点被删除?
这就是我想要的 3.5行距:

最佳答案

可能有助于将lineBreakMode -object的paragraphStyle设置为:NSLineBreakByTruncatingTail

关于ios - 为什么带有行距的多行UILabel会在最后删除3个点?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25133339/

10-17 01:08