UILabel 竖行显示


- (UIView *)viewLabelWithTitle:(NSString *)title

{

    CGFloat sizeFont = 10.5;

    

    CGFloat wordHeight = sizeFont + 2;                   //字体的高度

    

    CGFloat contentViewHeight = 90;                       //view的高度


    CGFloat contentViewWdith = 60;                        //view宽度


    CGFloat labelHeight = contentViewHeight - 12;           //label的高度

    

    NSInteger rowNum = title.length * wordHeight /labelHeight + 1;     //多少列

    

    CGFloat spaceX = (contentViewWdith - (wordHeight+3)*rowNum)/2;

    

    NSInteger titleNum = labelHeight/wordHeight;           //每列多少个文字

    

    UIView *labelView = [[UIView alloc]initWithFrame:CGRectMake(spaceX, 0, (wordHeight+3)*rowNum, contentViewHeight)];

    

    for ( int i = 0 ; i<rowNum ; i++) {

        

        UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(wordHeight*i+i*3, 6, wordHeight, labelHeight)];

        

        label.font = [UIFont systemFontOfSize:sizeFont];

        

        label.textColor = [UIColor whiteColor];

        

        label.numberOfLines = 0;

    

        NSInteger len = 0;

        

        if (i) {

            

            if (title.length - i*titleNum < titleNum) {

                

                len = title.length - i*titleNum;

                

            }

        }else {

            

            if (titleNum > title.length) {

                

                len = title.length;

            }else {

            

                len = titleNum;

            }

        }

        

        NSRange range = NSMakeRange(i*titleNum,len);

        

        label.text = [title substringWithRange:range];

        

        [labelView addSubview:label];

    }

    

    return labelView;

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值