UILabel自适应内容

UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero];

label.text = @“label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label label ”

//1、计算内容大小

用CGSize 来计算内容的大小:

sizeWithFont 指的是字体的大小;

constrainedToSize 指的是最大的大小;宽度最大为label的宽,高不限

lineBreakMode 指的是超出以后的模式

如:

CGSize size = [label.text sizeWithFont:label.font constrainedToSize:CGSizeMake(300,10000) lineBreakMode:NSLineByCharWrapping];

//2、设置label最大显示行数

如:

label.numberOfLines = 0;

//3、用计算出来的size设置label

如:

label.frame = CGRectMake(10,10,size.width,size.height);

[self.view addSubview :label];

现在版本计算size有问题,更简便的方法是

label.numberOfLines = 0 ;

[label sizeToFit];

就ok了

时间: 2024-09-30 11:57:31

UILabel自适应内容的相关文章

UILabel自适应文本,让文本自适应

//UILabel自适应文本的高度 UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 100, 300, 100)]; label.numberOfLines = 0; label.lineBreakMode = NSLineBreakByWordWrapping; label.text = @"本店于十一期间特推出一系列优惠,限时限量敬请选购!沙发:钻石品质,首领风范!床垫:华贵典雅,彰显时尚!尊贵而不失奢华,典雅却不失自

【转】UITableViewCell自适应高度 UILabel自适应高度和自动换行

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {    // 列寬    CGFloat contentWidth = self.tableView.frame.size.width;    // 用何種字體進行顯示    UIFont *font = [UIFont systemFontOfSize:13];       // 該行要顯示的內容    

UILabel自适应

以下代码以固定宽度,高度可变为例,先利用一个临时的label计算文本的宽度和高度,再将这个宽度和高度(CGSIze)赋值给一个要先显示的label(self.abstract) - (void)fixWidthWithAbstractText:(NSString *)text { self.abstract.size = [self sizeLabelToFit:text width:APPLICATION_SCREEN_WIDTH - 30 height:CGFLOAT_MAX]; self.

UITableViewCell自适应内容高度

UITableViewCell自适应内容高度 (2015-06-25 16:02:31) 其实TableViewCell自适应高度也就是Cell中的label自适应高度,网上有好多label自适应高度的方法,可以百度. 除了上面说的,还有一种比较简单的,其实原理估计都是一样的,只是个人觉得这种更好些而已. 首先我们知道返回cell自适应高度,那么这个高度怎么来,肯定是TableViewDelegate的方法- (CGFloat)tableView:(UITableView *)tableView

jquery库实现iframe自适应内容高度和宽度

javascript原生和jquery库实现iframe自适应内容高度和宽度---推荐使用jQuery的代码! ‍<iframe src="index.php" id="mainiframe" name="mainiframe" width="100%"   frameborder="0" scrolling="no" marginwidth="0" margi

UILabel 自适应

 CGFloat w = self.view.frame.size.width; UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 400, w, 0)]; [label setBackgroundColor:[UIColor grayColor]]; [label setNumberOfLines:0]; NSString *str = @"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMN

WPF自定义控件与样式(13)-自定义窗体Window &amp; 自适应内容大小消息框MessageBox

一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: 自定义Window窗体样式: 基于自定义窗体实现自定义MessageBox消息提示框: 二.自定义Window窗体样式 自定义的Window窗体效果:   因为WPF默认的窗体比较简陋,大都需要自己实现Window窗体样式效果,基本思路很简单: 第一步:干掉默认样式:WindowStyle = Windo

IOS UILabel 根据内容自适应高度

iOS Label 自适应高度  适配iOS7以后的版本 更多 self.contentLabelView = [[UILabel alloc] init]; self.contentLabelView.font = SYS_FONT(15); self.contentLabelView.lineBreakMode =NSLineBreakByTruncatingTail ; self.contentLabelView.textColor =  [UIColor colorWithHexStri

UILabel自适应高度

网上找了很多资料,都是iOS7.0之前的方法,现在苹果都已经弃用,不能使用了,小弟找了一个iOS7.0之后的方法,写下来给大家分享下 1 //创建UILabel 2 UILabel *label=[[UILabel alloc]init]; 3 4 //设置label可以换行 5 label.numberOfLines=0;//必须设置 //写好测试字符串 6 NSString * [email protected]"这些字都是用来测试UIlabel是否可以自适应高度的,所以无论我写了些什么你都