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

摘要:
创建标签_ GeRenJianJie=[[UILabelloc]init];_GeRenJianJie.numberOfLines=0;//您需要将显示的行数设置为unlimited_GeRenJianJie。font=[UIFontsystemFontOfSize:xxxx“;计算标签内容的大小CGSizesize=[selfsizeWithStr:size.height);

好吧 

步骤1:创建label

_GeRenJianJie = [[UILabel alloc]init];

步骤2:设置label

_GeRenJianJie.textColor = RGBAColor(95, 104, 115, 1);
    _GeRenJianJie.numberOfLines = 0; // 需要把显示行数设置成无限制
    _GeRenJianJie.font = [UIFont systemFontOfSize:16];

    _GeRenJianJie.textAlignment = NSTextAlignmentLeft;
    _GeRenJianJie.text = @“xxxx ";

 步骤三:计算label内容的大小

 CGSize size =  [self sizeWithStr:_GeRenJianJie.text font:_GeRenJianJie.font];

 步骤4:设置label的frame

_GeRenJianJie.frame = CGRectMake(15, 30, [UIScreen mainScreen].bounds.size.width-30, size.height);
    [footView addSubview:_GeRenJianJie];

 这样就搞定了

其中涉及到一个方法返回label的大小

// 定义成方法方便多个label调用 增加代码的复用性
- (CGSize)sizeWithSt:(NSString *)string font:(UIFont *)font
{
    CGRect rect = [string boundingRectWithSize:CGSizeMake(320, 8000)//限制最大的宽度和高度
                                       options:NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesFontLeading  |NSStringDrawingUsesLineFragmentOrigin//采用换行模式
                                    attributes:@{NSFontAttributeName: font}//传人的字体字典
                                       context:nil];
    
    return rect.size;
}

免责声明:文章转载自《ios 设置label的高度随着内容的变化而变化》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇CRM客户关系管理系统(三)C/C++ #include<> 和 #include""的区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

IOS-基础知识

1 变量声明 变量的声明与C语言一样,在变量名前加类型名 以下这些数据类型是从C语言中直接拿来使用的: int n; unsigned int n; char n; unsigned char n; long n; float n; double n; 另外,Objective-C还扩展了一些数据类型,布尔类型用YES和NO来表示逻辑1和逻辑0...

TIDB3.0下线tikv节点

环境:centos7、tidb3.0 思路:查找store-id——>重集群中移除节点——>查看节点是否下线完成——>停止节点服务——>移除配置信息——>更新监控信息 1、在中控机上找到要移除tikv的store-id [tidb@tidb-21 ~]$ /home/tidb/tidb-ansible/resources/bi...

IOS 特定于设备的开发:Core Motion基础

    Core Motion框架集中了运动数据处理。该框架是在IOS 4 SDK中引入的,用于取代accelerometer加速计访问。它提供了对3个关键的机载传感器的集中式监测。这些传感器有陀螺仪、磁力计和加速计组成,其中陀螺仪用于测量设备的旋转,磁力计提供了一种测量罗盘方位的方式,加速计用于监测沿着3根轴的重力变化。第四个入口点称为设备移动(devic...

Linux链接脚本学习--lds(转)

Linux链接脚本学习--lds 一、概论 ld: GNU的链接器. 用来把一定量的目标文件跟档案文件链接在一起,并重新定位它们的数据,链接符号引用. 一般编译一个程序时,最后一步就是运行ld进行链接 每一个链接都被一个链接脚本所控制,这个脚本是用链接命令语言书写的. 二、链接脚本 链接脚本的一个主要目的是描述输入文件中的各个段(数据段,代码段,堆,...

[Swift]遍历字符串

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen/LeetCode➤原文地址:https://...

SqlBulkCopy 批量插入数据库

    /// <summary> /// 批量插入 注:DT的tableName为要更新的数据库表名,DT的列名和数据库一致 /// </summary> /// <param name="dt"></param> /// <rem...