zoukankan      html  css  js  c++  java
  • iOS-动态计算Label的高度

    一. 要求

    1.根据网络请求的回来的字符串内容,动态计算Label的高度.

    二. 注意点

    1. 要注意设置label 的 numberOfLines 为0;

    2. MAXFLOAT 的作用. 设置高度无限大.

    三.代码

    #import "ViewController.h"

    @interface ViewController ()

    @property (nonatomic,strong) UILabel * label;

    @end

     @implementation ViewController

     - (void)viewDidLoad

    {

        [super viewDidLoad]; 

        [self createLabel];

    }

    - (void)createLabel

    {

        self.label = [[UILabel alloc] init];

        

        self.label.backgroundColor = [UIColor yellowColor];

        

        NSString * str = @"1、毕业后才知道校园恋爱是最纯洁的; 2、毕业后才知道学习是最重要的; 3、毕业后才知道校园生活是最幸福的; 4、毕业后才知道宿舍生活是最好的; 5、毕业后才知道食堂的饭菜是最便宜的; 6、毕业后才知道上学是最美妙的事。 7、毕业后才知道学生花钱最大手大脚......";

        

        self.label.text = str;

        self.label.numberOfLines = 0;

        

        [self.view addSubview:self.label];

        UIFont * font = self.label.font;

    // iOS 7.0 之前的方法.已经被弃用    

    //    CGSize size = [self.label.text sizeWithFont:font constrainedToSize:CGSizeMake(_label.frame.size.width, MAXFLOAT) lineBreakMode:UILineBreakModeWordWrap];

        

        NSDictionary * dict = @{

                                NSFontAttributeName : font

                                };

         //计算label的文字宽高

        CGSize size = [self.label.text boundingRectWithSize:CGSizeMake(self.view.frame.size.width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil].size;

        CGFloat nameH = size.height;

        CGFloat nameW = size.width;

        NSLog(@"w: %f --h: %f",nameW,nameH);    

    // 设置label的动态frame

        self.label.frame = CGRectMake(0, 30, nameW, nameH);

    }

    @end

     
    你的一次推荐就是对我莫大的支持。感觉不错,给个推荐或者评论吧。
  • 相关阅读:
    C# post请求,Json转换实体类
    jq div 托拉拽
    json转换成实体类
    C# 队列、锁、异步
    关于C#调用protobuf 序列化和反序列化
    关于System.Data.Entity.Infrastructure.DbUpdateException 的问题
    C# 本地CSS和JS引用无问题,部署服务器之后出现500错误
    windows服务
    下拉加载更多DEMO(js实现)
    禁用iPhone手机浏览器上给电话号码自动加上的link样式
  • 原文地址:https://www.cnblogs.com/mancong/p/5395782.html
Copyright © 2011-2022 走看看