从0开始架构一个IOS程序——iOS 根据文字的长度来动态设置UILabel的大小
UIlabel根据文字的长度来动态设置的大小
#import <Foundation/Foundation.h>@interface SINALabelUtils : NSObject//根据文字内容来动态设置label的宽与高
//参数一 tagLabel 动态设置的label
//参数二 tagString 需要测量的文字的长度
+(UILabel *) updateLabel:(UILabel*) tagLabel andWithString:(NSString*)tagString;//根据文字内容来动态设置label的宽与高
//参数一 tagLabel 动态设置的label
//参数二 tagString 需要测量的文字的长度
//参数三 fontSize 需要设置的文字的大小
+(UILabel *) updateLabel:(UILabel*) tagLabel andWithString:(NSString*)tagString andWithTextSize:(NSInteger) fontSize;
//根据文字内容来动态设置label的宽与高
//参数一 tagLabel 动态设置的label
//参数二 tagString 需要测量的文字的长度
//参数三 tagWidth label 可设置的最大宽度
//参数四 tagHeight label 可设置的最大高度
//参数五 fontSize 需要设置的文字的大小
+(UILabel *)updateLabel:(UILabel *)tagLabel andWithString:(NSString *)tagString andWithTagWidth:(NSInteger) tagWidth andWithTagHeight:(NSInteger) tagHeight andWithTagFontSize:(NSInteger)fontSize;
@end
#import "SINALabelUtils.h"@implementation SINALabelUtils+(UILabel *)updateLabel:(UILabel *)tagLabel andWithString:(NSString *)tagString{return [[self class] updateLabel:tagLabel andWithString:tagString andWithTagWidth:[UIScreen mainScreen].bounds.size.width andWithTagHeight:[UIScreen mainScreen].bounds.size.height andWithTagFontSize:16];
}+(UILabel *)updateLabel:(UILabel *)tagLabel andWithString:(NSString *)tagString andWithTextSize:(NSInteger)fontSize{return [[self class] updateLabel:tagLabel andWithString:tagString andWithTagWidth:[UIScreen mainScreen].bounds.size.width andWithTagHeight:[UIScreen mainScreen].bounds.size.height andWithTagFontSize:fontSize];
}+(UILabel *)updateLabel:(UILabel *)tagLabel andWithString:(NSString *)tagString andWithTagWidth:(NSInteger) tagWidth andWithTagHeight:(NSInteger) tagHeight andWithTagFontSize:(NSInteger)fontSize{NSDictionary *attributes = @{NSFontAttributeName:[UIFont systemFontOfSize:fontSize],};CGSize textSize = [tagString boundingRectWithSize:CGSizeMake(tagWidth, tagHeight) options:NSStringDrawingTruncatesLastVisibleLine attributes:attributes context:nil].size;;tagLabel.numberOfLines=0;//重置label的frame 主要是重设label的宽度与调试tagLabel.frame=CGRectMake(tagLabel.frame.origin.x, tagLabel.frame.origin.y, textSize.width, textSize.height);return tagLabel;
}@end
从0开始架构一个IOS程序——iOS 根据文字的长度来动态设置UILabel的大小相关推荐
- 从0开始架构一个IOS程序—— 05— NavigationBar 搭建首页面
从0开始架构一个IOS程序 05 NavigationBar搭建首页面 Mac OSX 10.11 之后 效果 在这里的实现思路 创建 navigationItem titleView 添加ViewC ...
- 从0开始架构一个IOS程序 ——04— UITabBarController和自定义TabBar 搭建主页面
从0开始架构一个IOS程序 04 UITabBarController 搭建主页面 Mac OSX 10.11 之后 效果 1 首先创建自定义TabBar 1.1 WISHomeTabBarView. ...
- 从0开始架构一个IOS程序——03 — -分包用添加pch全局引用文件
从0开始架构一个IOS程序 03分包用添加pch全局引用文件 Mac OSX 10.11 之后 PCH文件简介: PCH文件是Xcode编程中全局引用共享的文件.可以在这里引入头文件或者宏定义来方便程 ...
- 从0开始架构一个IOS程序—— 02 — 设置启动图标与启动页面
从0开始架构一个IOS程序 02设置启动图标与启动页面 Mac OSX 10.11 之后 1 指定应用程序所要加载的应用图标与启动加载图片 2 应用图标的相关设置 3 启动图片的相关设置
- 从0开始写一个小程序
项目简介 从0开始写一个小程序,本来想写一个新闻类的程序,后来发现调用的聚合数据api每天只能访问100次,就换成豆瓣的了,直接用豆瓣的接口又访问不了,在网上查了一下,要把豆瓣的地址换成"h ...
- Taro小程序,底部输入框获取键盘高度动态设置bottom有延迟解决
Taro小程序,底部输入框获取键盘高度动态设置bottom有延迟0.5s左右 业务场景: Taro+TaroUI+微信小程序 底部固定了一个输入框,当聚焦时输入框自然要上推页面才合理.但不能设置adj ...
- 【Java从0到架构师】Zookeeper 应用 - Java 客户端操作、服务器动态感知、分布式锁业务处理
分布式基石 Zookeeper 框架全面剖析 Java 客户端操作 Java 客户端 API 服务器的动态感知 服务注册 服务发现 分布式锁业务处理 单机环境(一个虚拟机中) 分布式环境_同名节点 分 ...
- 【3.0】第一个Hibernate4程序----详解
1.Configuration管理读取配置文件 //读取src下hibernate.properties,不推荐使用 Configuration cfg = new Configuration();/ ...
- 编写一个应用程序:输入长方形的长度、宽度,计算长方形的周长、面积并输出:
import javax.swing.JOptionPane; public class Main{ public static void main(String []args){ String st ...
最新文章
- ML之Hierarchical clustering:利用层次聚类算法来把100张图片自动分成红绿蓝三种色调
- mysql查询不同老师所教不同课程_mysql学习训练记录及笔记(二)
- 听技术播客:一边学Python编程一边学英语
- 忘记番石榴:5个Google库Java开发人员应该知道的
- 禾匠榜店小程序商城V4独立版V4.0.25 前端+后端
- 图片保存到数据库和从数据库读取图片并显示(C#)
- PHP统计链接跳转的次数,如何在PHP页面统计某链接的点击数
- 求杨辉三角的前n行数据_两道简单的套公式算法题:杨辉三角
- word更改字距调整,让文章更具美感!
- tar打包忽略某个目录
- office2016安装mathtype7.4教程
- 迈信EP100伺服驱动器量产型修改bug全套C源代码和硬件
- 《安富莱嵌入式周报》第231期:2021.09.20--2021.09.26
- Voicemeeter Potato —— Windows 平台下的终极虚拟音频混音器
- 将百度地图下载为图片-自定义尺寸
- winserver2003手谈
- lol12.11服务器维护,LOL2018年11月13日更新维护到几点
- 利用wordcloud和jieba制作词云
- Angular4与PrimeNG
- 加号和字符串拼接符号
热门文章
- 国家游泳中心诚聘CV算法开发人员~待遇优福利厚
- CVPR 2019 | 亮风台发布全球最大单目标跟踪数据集LaSOT
- mysql查一个表3到5行的数据类型_MySQL入门(三) 数据库表的查询操作【重要】
- 游戏3d建模师的待遇及发展
- 不是程序员看不懂的21个梗,当你改错一行代码的时候...
- AMD宣布350亿美元收购赛灵思,CPU、GPU、FPGA全凑齐
- 本硕985非科班渣硕2020腾讯计算机视觉算法实习面经(已获Offer)
- Pandas-DataFrame基础知识点总结
- 长文详解基于并行计算的条件随机场CRF
- 导出库的版本_了解 JavaScript 模块系统基础知识,搭建自己的库