iOS7以下的系统可使用方法

//获得当前cell高度

CGRect frame = [self frame];

//文本赋值

self.introduction.text = text;

//设置label的最大行数

self.introduction.numberOfLines = 0;

CGSize size = CGSizeMake(300, 1000);

CGSize labelSize = [self.introduction.text sizeWithFont:self.introduction.font constrainedToSize:size lineBreakMode:NSLineBreakByClipping];

NSLog(@"w = %f", labelSize.width);

NSLog(@"h = %f", labelSize.height);

iOS7以上才支持的方法

//    NSAttributedString *attrStr = [[NSAttributedString alloc] initWithString:self.introduction.text];

////    self.introduction.attributedText = attrStr;

//    NSRange range = NSMakeRange(0, attrStr.length);

//    NSDictionary *dic = [attrStr attributesAtIndex:0 effectiveRange:&range];

NSDictionary *dic = @{NSFontAttributeName: self.introduction.font};

CGSize labelSize1 = [self.introduction.text boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading attributes:dic context:nil].size;

NSLog(@"w = %f", labelSize1.width);

NSLog(@"h = %f", labelSize1.height);

self.introduction.frame = CGRectMake(self.introduction.frame.origin.x, self.introduction.frame.origin.y, labelSize1.width, labelSize1.height);

//计算出自适应的高度

frame.size.height = labelSize1.height+100;

self.frame = frame;

iOS6以上才支持的方法

NSAttributedString *str = [[NSAttributedString alloc] initWithString:self.introduction.text];

NSAttributedString *str1 = [[NSAttributedString alloc] initWithString:self.introduction.text attributes:@{NSFontAttributeName : self.introduction.font}];

CGSize size1 = [str boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading context:nil].size;

CGSize size2 = [str1 boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading context:nil].size;

自适应label的高度的更多相关文章

  1. 基于jQuery自适应宽度跟高度可自定义焦点图

    基于jQuery自适应宽度跟高度可自定义焦点图.这是一款带左右箭头,缩略小图切换的jQuery相册代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <section cl ...

  2. ios webview自适应实际内容高度4种方法

    有的时候会碰见类似的苦逼需求, webview自适应实际内容高度 下面有四种方法供使用 方法1:获取webview中scrovllview的contentsize进行设置   1 2 3 4 5 6 ...

  3. iOS-动态计算Label的高度

    一. 要求 1.根据网络请求的回来的字符串内容,动态计算Label的高度. 二. 注意点 1. 要注意设置label 的 numberOfLines 为0; 2. MAXFLOAT 的作用. 设置高度 ...

  4. 如何设置自适应当前浏览器高度的div块

    嗯 就是下面这样 <!DOCTYPE html> <head> <title>adaptive this page size</title> <s ...

  5. 怎么可以让div自适应屏幕的高度?(已解决)

    主要解决问题的方法是用JS脚本. 先看布局, 一个div是首部,另一个div是主体,主体包含左侧菜单和右侧内容. 我想把主体div的高度自适应屏幕剩余区域,怎么做? 首先,获取可见区域的高度,docu ...

  6. 总结iframe高度自适应,自适应子页面高度

      在网上找了很多iframe的高度自适应,发现很多兼容性都不是很好,于是自己总结了一下. 页面html节点上要有 <!DOCTYPE html PUBLIC "-//W3C//DTD ...

  7. ios 设置label的高度随着内容的变化而变化

    好吧 步骤1:创建label _GeRenJianJie = [[UILabel alloc]init]; 步骤2:设置label _GeRenJianJie.textColor = RGBAColo ...

  8. 根据文字计算出label的高度

    ios7.0之前用: [strtestsizeWithFont:ContentFontconstrainedToSize:CGSizeMake(ScreenWeight -20, 1000) line ...

  9. Winfrom固定Label宽度,根据文本动态改变Label的高度 z

    Label,要固定住宽度,然后根据文本的长度来动态改变高度,一开始去网上找解决方案,各种根据字体大小啊,字数啊来动态改变,但是效果却不怎么好.最后灵机一动,想起了偶尔用过一次的FlowLayoutPa ...

随机推荐

  1. LWIP协议中tcp_seg结构相关指针的个人理解

    我曾经写在新浪博客上面,后来复制到这,图片就不行了. 原文地址转载  LWIP协议中tcp_seg结构相关指针的个人理解(http://blog.sina.com.cn/s/blog_7e586985 ...

  2. Dorado7 4版本升级5版本问题汇总

    1.4版本中使用@Bind #dataType1.onInsert没问题,使用@Bind @dataType1.onInsert也没问题,5版本中前者不会触发

  3. robotframework笔记9

    列表和字典 通过专用关键字创建了列表和字典.我们将在这里看到创建的两个例子 ︰ 选择 *** Settings *** Library BuiltIn Library Collections *** ...

  4. linq to xml学习

    http://www.cnblogs.com/greatverve/archive/2010/07/09/linq-to-xml-add-delete-update-query.html 记录一下,别 ...

  5. javamail 学习及实例

    JavaMail,是Sun发布的用来处理email的API,提供给开发者处理电子邮件相关的编程接口.通过使用它可以方便地执行一些常用的邮件传输. 可以看下<java邮件开发详解>第四章和第 ...

  6. WCF学习笔记

    1,关于WCF/web service/WSE Web Service:是行业标准,也就是Web Service 规范,也称作WS-*规范,既不是框架,也不是技术.它有一套完成的规范体系标准,而且在持 ...

  7. struts2视频学习笔记 01-02

    网易云课堂-<struts2> 课时1 Struts2: WebWork2基础上发展而来,MVC框架,无侵入式设计. 提供了拦截器,类型转换器,支持多种表现层技术(JSP, freeMar ...

  8. Oracle - PL/SQL Commands

    第一章:日志管理 1.forcing log switches sql> alter system switch logfile; 2.forcing checkpoints sql> a ...

  9. SqlHelper帮助类

    数据库连接字符串//Data Source=.;Initial Catalog=Test1;User Id=sa;Password=123456; public static class SqlHel ...

  10. BZOJ2492 Revenge of Fibonacci

    首先我们高精度加法算出前10W个数... 然后把所有的前40位搞出来建成trie树,于是就变成了模板题了... 说一下...这题要是直接建出来son[tot][10]会MLE...所以...建trie ...