如何设置uilabel长度自适应宽度

如题所述

第1个回答  2017-08-29

设置uilabel长度自适应宽度有以下3步:

一、创建工程项目和视图控制器

      1、创建一个Sing View Application工程项目;

      2、为项目命名,生成工程文件。 

二、添加UILabel

      1、在ViewController.m创建并实例化一个UILabel;

      2、设置UILabel的背景颜色;

      3、将UILabel添加至父类视图中:addSubview。


三、设置UILabel的属性

      1、设置最大显示行数(=0时不限制),自适应需要设置为0:

      label.numberOfLines = 0; 

      2、设置text属性的文本内容:

      label.text = @""; //内容需要长点才能显示效果


自适应方式一

      使用:[label sizeToFit];

      会固定label宽度,然后高度根据文字多少增加。此处固定宽度是label的width=100。


自适应方式二

      1、获取text属性的文本内容;

      2、重新定义宽度和高度;

      3、设置换行模式;

      4、计算CGRect并重新设置UILabel的frame。

      CGRect rect = [label.text boundingRectWithSize:CGSizeMake(self.view.frame.size.width - 20, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:@{NSFontAttributeName: label.font} context:nil];

如何设置uilabel长度自适应宽度
1、在ViewController.m创建并实例化一个UILabel;2、设置UILabel的背景颜色;3、将UILabel添加至父类视图中:addSubview。三、设置UILabel的属性 1、设置最大显示行数(=0时不限制),自适应需要设置为0:label.numberOfLines = 0;2、设置text属性的文本内容:label.text = @""; \/\/内容需要长点...

iOS 8 xib拉的 UILabel 能自适应么?怎么自适应
可以,设置好约束,然后就可以在code中动态调节label的大小了。然后外面的其他空间也动态移动改变

iOS 8 xib拉的 UILabel 能自适应么?怎么自适应
UIFont *font = [UIFont fontWithName:@"Arial" size:12];\/\/设置一个行高上限 CGSize size = CGSizeMake(320,2000);\/\/计算实际frame大小,并将label的frame变成实际大小 CGSize labelsize = [s sizeWithFont:font constrainedToSize:size lineBreakMode:UILineBreakModeWordWrap];[label setFrame:CGRect...

UIButton可以自适应高度吗,像UILabel一样
UILabel自适应里面的文字,自动调整宽度和高度: UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];\/\/必须是这组值,这个frame是初设的,没关系,后面还会重新设置其size。 [label setNumberOfLines:0];

求教如何实现UICollectionViewCell的自适应宽度
} return self; } #pragma mark — 实现自适应文字宽度的关键步骤:item的layoutAttributes - (UICollectionViewLayoutAttributes *)preferredLayoutAttributesFittingAttributes:(UICollectionViewLayoutAttributes *)layoutAttributes{ UICollectionViewLayoutAttributes *attributes = [super preferredLayout...

iOS 8 xib拉的 UILabel 能自适应么?怎么自适应
CGFLOAT_MAX) lineBreakMode:NSLineBreakByWordWrapping];\/\/此处的换行类型(lineBreakMode)可根据自己的实际情况进行设置 return sizeToFit.height;} return 0;} } 上面的代码就可以。还需设置下label的 numberofline= 0 breakMode 以及 重新设置label.frame 如果在tableview上要重新设置cell的高度.

uilabel 自适应的text属性和attributedText属性有什么区别
当在一个UILabel上添加同样是UILabel的subView的时候,洳果给父Label设置背景颜色(setBackgroundColor:)但没有设置Text(setText:),那么子Label设置的text就显示不了,真是一个奇怪的问题。 下面有3种解决办法: 1、将父Label改成UIView 2、不设置父Lable的背景颜色 3、设置父Label的Text( [superLabel setText:@...

iOS 计算UILabel 文本高度问题
preferredMaxLayoutWidth 。 看官方解释:初始化UILabel的时候设置这个属性的值为UILabel的宽度即可,然后通过 intrinsicContentSize 方法就可以准确计算出文本的高度了。使用 sizeThatFits: 方法计算,不用额外设置上面那些不用的属性。 直接掉用下面方法即可。

TextKit探究
,后来需求变动,要添加英文模式,这里就能看的,英文模式下,要显示的内容就大大加长了。(也就是说一行不能完全显示) 这里就要 使内容高度宽度自适应了 这也就是将要提到的 思路2 因为UITextview已经默认将内容拼合起来, 而且它存在一个 attributedText 属性 所以,我们可以根据 range 或者...

ios怎么实现view的自适应高度
\/\/ 设置文本内容 label.text = @"aaaaaaaaaaaaa";\/\/ 0代表不限制行数 [label setNumberOfLines:0];\/\/ 因为行数不限制,所以这里在宽度不变的基础上(实际宽度会略为缩小),高度会自动扩充 [label sizeToFit];[self.view addSubview:label];[label release];} 如果问的是TextView的话直接把高度...

相似回答