IOS UILabel 根据内容自适应高度

iOS Label 自适应高度  适配iOS7以后的版本

更多

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

self.contentLabelView.font = SYS_FONT(15);

self.contentLabelView.lineBreakMode =NSLineBreakByTruncatingTail ;

self.contentLabelView.textColor =  [UIColor colorWithHexString:@"#444444"];

self.contentLabelView.text =[@"12312312312312321321dddsdadsadasdasdas" stringByAppendingString:@"\n\n\n\n\n\n\n"];

[self.contentLabelView setNumberOfLines:0];

//根据内容计算出label所需要的高度

  CGSize size = CGSizeMake(kScreenWidth - expectSizes.width-20, MAXFLOAT);

    NSDictionary * tdic = [NSDictionary dictionaryWithObjectsAndKeys:self.contentLabelView.font,NSFontAttributeName,nil];

    CGSize  actualsize =[self.contentLabelView.text boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin  attributes:tdic context:nil].size;

    self.contentLabelView.frame =CGRectMake(expectSizes.width+20, 254, actualsize.width, actualsize.height);

 

纯代码布局可能会用到,不过推荐使用xib或storyboard。

时间: 2024-08-24 18:13:35

IOS UILabel 根据内容自适应高度的相关文章

iOS UILabel的输出自适应高度设置

.h文件 #import <Foundation/Foundation.h>#import <UIKit/UIKit.h>@interface HeightWithString : NSObject//计算各种文字高度//参数1:文本 参数2:label的宽度 参数3:字体大小+(CGFloat)heightForTextLable:(NSString *)text width:(CGFloat)width fontSize:(CGFloat)fontSize; @end .m 文

父容器不根据内容自适应高度的解决方法

Div不根据内容自适应高度,我们看下面的代码: <div id="main"> <div id="content"></div> </div> 当Content内容多时,即使main设置了高度100%或auto.在不同浏览器下还是不能完好的自动伸展.内容的高度比较高了,但容器main的高度还是不能撑开. 我们可以通过三种方法来解决这个问题. 一,增加一个清除浮动,让父容器知道高度.请注意,清除浮动的容器中有一个空格.

html5 textarea 文本框根据输入内容自适应高度

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>文本框根据输入内容自适应高度</title> <style type="t

iOS UIWebView 获取内容实际高度,关闭滚动效果

iOS UIWebView 获取内容实际高度,关闭滚动效果 近期做东西,将 UIWebView 嵌套在 UIScrollView 里,由 UISCrollView 控制滚动,需要使 UIWebView 的高度同内容高度一致,网上搜索的到代码: htmlHeight = [webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"]; 这段代码是无效的,body 获取到的 offsetHeigh

Android 让GridView的高度为Wrap_content根据内容自适应高度

From:http://www.jayway.com/2012/10/04/how-to-make-the-height-of-a-gridview-wrap-its-content/ 如果把GridView放到一个垂直方向滚动的布局中,设置其高度属性为 wrap_content ,则该GridView的高度只有一行内容,其他内容通过滚动来显示. 如果你想让该GridView的高度为所有行内容所占用的实际高度,则可以通过覆写GridView的 onMeasure 函数来修改布局参数: packa

iOS:解决UITextView自适应高度粘贴大量文字导致显示不全的问题

一.描述 在UITextView输入框中粘贴大量的文字时,UITextView内容自适应高度计算出现误差,导致整块文字上移消失. 二.方案 在UITextView文字改变的监听中添加如下方法即可. [self.textView scrollRangeToVisible:self.textView.selectedRange]; 原文地址:https://www.cnblogs.com/XYQ-208910/p/9560290.html

iOS之UILabel根据内容自动调整高度

写法一:对象方法,传入:字体/最大尺寸. 即可得到宽高, 最大尺寸主要限制宽度,如果是一行就给个{MAXFLOAT,MAXFLOAT};如果是多行就限制X值,Y值随便给 - (CGSize)sizeWithFont:(UIFont *)font maxSize:(CGSize)maxSize { NSDictionary *attrs = @{NSFontAttributeName : font}; return [self boundingRectWithSize:maxSize option

iframe 如何让它展现内容自适应高度

引用: <iframe id="ifm1" runat="server" src="/comment/[email protected]" width="100%" height="100%" frameborder="0" border="0" marginwidth="0" marginheight="0" scrol

iOS 设置UILabel的行间距并自适应高度

NSString *contentStr = @"总以为,在最初的地方,有一个最原来的我,就也会有一个最原来的你"; UILabel *tempLabel = [[UILabel alloc] init]; //设置背景颜色 tempLabel.backgroundColor = [UIColor redColor]; //设置内容 tempLabel.text = contentStr; //设置字体颜色 tempLabel.textColor = [UIColor whiteCol