美文网首页iOS
iOS UILabel 文字自动左上角对齐

iOS UILabel 文字自动左上角对齐

作者: Amok校长 | 来源:发表于2016-09-08 17:28 被阅读0次

    iOS中默认的UILabel是垂直居中对齐的,如果UILabel设置的高度较大,当内容少的时候,会自动垂直居中。

    创建一个 UILabel的category

    代码如下:

    #import

    @interface UILabel (LeftTopAlign)

    - (void) textLeftTopAlign;

    @end

    #import UILabel+LeftTopAlign.h

    @implementation UILabel (LeftTopAlign)

    - (void) textLeftTopAlign

    {

    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init];

    paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;

    NSDictionary *attributes = @{NSFontAttributeName:[UIFont systemFontOfSize:12.f], NSParagraphStyleAttributeName:paragraphStyle.copy};

    CGSize labelSize = [self.text boundingRectWithSize:CGSizeMake(207, 999) options:NSStringDrawingUsesLineFragmentOrigin attributes:attributes context:nil].size;

    CGRect dateFrame =CGRectMake(2, 140, CGRectGetWidth(self.frame)-5, labelSize.height);

    self.frame = dateFrame;

    }

    @end

    在需要的时候,只需要直接调用即可。

    #import UILabel+LeftTopAlign.h

    -(void)someMethod:(UILabel*)label

    {

    [label textLeftTopAlign];

    }

    相关文章

      网友评论

        本文标题:iOS UILabel 文字自动左上角对齐

        本文链接:https://www.haomeiwen.com/subject/btosettx.html