欢迎使用优快云-markdown编辑器

本文详细介绍了如何在iOS应用中使用Objective-C创建UILabel,并通过判断文本长度自动调整其高度,确保UI布局的灵活性和美观性。
/**************** label  是一个用于展示为本的控件 ***************/
 //分配内存 + 初始化
  m_lab = [[UILabel alloc]init];

//文本在控制器上的位置
m_lab.frame = CGRectMake(10, 40, self.view.bounds.size.width - 20, 40);

//文本的内容
m_lab.text = @"文本内容";

//文本对齐方式
m_lab.textAlignment = NSTextAlignmentCenter;

//文本文字颜色
m_lab.textColor = [UIColor redColor];

//文本文字大小
m_lab.font = [UIFont systemFontOfSize:15];

//如果文字可以通过文字多少自动来适应控件的宽度--放缩 缩小的最小尺度
m_lab.minimumScaleFactor = 12;

//自动调节文字的大小来适应为本的宽度
m_lab.adjustsFontSizeToFitWidth = YES;

//设置背景颜色

/****************** 下面是通过判断字体的多少来自动改变label的高度********************/

NSString *textStr = @”7819234owkjfsdnc hgdfhsmegfhmmsdusjdhfasf asdkfasdjfhsdfsrfyhskdfhsd.sdj,sdfjksdfskdhfkasdjfladjflajdf ahkadfhkasghsadfhafhkhlwork for my self阿斯顿发送到发送到发送给我的风格让他有很多问题离开公司打工”;
self.label.text = textStr;
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init];
CGRect rect = [textStr boundingRectWithSize:CGSizeMake(200, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:self.label.font,NSParagraphStyleAttributeName:paragraphStyle} context:nil];

self.label.frame = CGRectMake(10, 300, rect.size.width, rect.size.height);
//设置label中最多可以显示多少行    default is 1  如果是0 表示不限制有多少行!如果是2表示最多两行 以此类推
self.label.numberOfLines = 0;
//设置换行模式  enum -----仅在对行显示是生效
self.label.lineBreakMode = NSLineBreakByCharWrapping;
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值