ios label文字行间距_iOS设置UILabel文字的行间距和字间距
释放双眼,带上耳机,听听看~!
可以在UILabel的Category中提供如下几个方法:
.h文件
@interface UILabel (ChangeLineSpaceAndWordSpace)
/**
* 改变行间距
*/
+ (void)changeLineSpaceForLabel:(UILabel *)label WithSpace:(float)space;
/**
* 改变字间距
*/
+ (void)changeWordSpaceForLabel:(UILabel *)label WithSpace:(float)space;
/**
* 改变行间距和字间距
*/
+ (void)changeSpaceForLabel:(UILabel *)label withLineSpace:(float)lineSpace WordSpace:(float)wordSpace;
@end
.m文件
@implementation UILabel (ChangeLineSpaceAndWordSpace)
+ (void)changeLineSpaceForLabel:(UILabel *)label WithSpace:(float)space {
NSString *labelText = label.text;
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[paragraphStyle setLineSpacing:space];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
label.attributedText = attributedString;
[label sizeToFit];
}
+ (void)changeWordSpaceForLabel:(UILabel *)label WithSpace:(float)space {
NSString *labelText = label.text;
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText attributes:@{NSKernAttributeName:@(space)}];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
label.attributedText = attributedString;
[label sizeToFit];
}
+ (void)changeSpaceForLabel:(UILabel *)label withLineSpace:(float)lineSpace WordSpace:(float)wordSpace {
NSString *labelText = label.text;
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText attributes:@{NSKernAttributeName:@(wordSpace)}];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[paragraphStyle setLineSpacing:lineSpace];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
label.attributedText = attributedString;
[label sizeToFit];
}
@end
附: 在Xcode8中创建Category文件的方法:
在工程目录中右键选择New File...或者使用键盘command+N, 然后在弹出窗口中选择Objective-C File
新建文件
然后
起名字, 选择Category, 并选择要扩展的类
最后
设置好后点击Next完成
ios label文字行间距_iOS设置UILabel文字的行间距和字间距相关推荐
- ios label文字行间距_iOS 设置UILabel行间距【原创】
今天在项目中遇到需要设置较多文字的行间距问题,得到解决办法分享给大家. 下面贴出代码供参考: 1.正常使用 UILabel *label = [[UILabel alloc] initWithFram ...
- Java安卓文字居中_设置TextView文字居中,代码实现android:layout_gravity
设置TextView文字居中 android:gravity指的是控件的位置 而android:layout_gravity指的是这个layout的,是外面的 有2种方法可以设置TextView文字居 ...
- ios label文字行间距_iOS 设置label的行间距教程
//方式二 UILabel *label3 = [[UILabel alloc]init]; label3.frame=CGRectMake(200, 50, 70, 60); label3.text ...
- html居右显示语言设置,iOS开发:纯代码设置UIButton文字居左或者居右显示
UIButton这个控件使用,作为资深的iOS开发人员来说是小儿科,但是有些时候还是需要记录一下UIButton的一些其他用法,这样方便快速解决实际问题.比如UIButton的纯代码编程的时候,设置文 ...
- ios label 高度紫石英_IOS开发中UILabel自适应大小显示的方法
1,根据label中的文字内容自动换行显示的方法 1>,认识两个属性 @property(nonatomic) NSIntegernumberOfLines; @property(nonatom ...
- 在html设置文字位置,html设置怎么文字的位置
html设置文字位置的方法:首先使用position属性设置文字元素的定位类型(绝对定位或固定定位):然后使用top.bottom.left和right属性设置文字元素偏移值,进而设置文字元素的位置. ...
- ios label 高度紫石英_iOS中iconfont(图标字体)的基本使用
前言 近日在做项目时,项目组有提出iconfont的技术,便开始查询相关资料.iconfont技术的主要目的是为减少应用体积而生.首先icon代表图标 font代表字体.此技术便是将图标转化为字体,从 ...
- ios 部分string颜色_ios 设置字符串中某段字符的颜色
1.提取URL NSMutableAttributedString*strMutable=[[NSMutableAttributedString alloc]initWithString:str]; ...
- JAVA的cell设置行间距_iOS设置tableView的cell之间的间距
之前在网上找过很多设置间距,各有各的好处.这里介绍一种我常用的方法,目前没有碰到过什么问题,如果有问题,我会在后面补充说明. 1.创建一个tableView UITableView *myTableV ...
最新文章
- dispatchTouchEvent onInterceptTouchEvent onTouchEvent
- java发送消息_通过java给qq邮箱发送信息
- 化繁就简 · 万物互联,华为云All-Connect企业级云网络正式发布
- PX4避障和轨迹规划(3DVFH*)
- jquery获取复选框checkbox的值
- 2021腾讯广告大赛学习总结
- linux驱动数码管-基于74HC164D
- 排序算法7——图解快速排序(两种主元选择方法)以及CUTOFF时间测试
- 在chrome中f12控制自动刷新页面增加阅读量方法
- java基础知识入门大全(十年经验总结)
- 问题解决:“nginx: [emerg] unknown directive “ “ in /etc/nginx/conf.d/XXX.conf:122”
- DB2性能调整优化问题
- 如何oracle调试存储过程
- thingsboard-部件库开发 之 rpc-部件开发
- 内存容量大小单位转换
- 【疲劳检测】行为特征疲劳驾驶检测【含Matlab源码 944期】
- dbNSFP:非同义突变功能注释数据库
- 两个月运维工程师的工作总结及心得
- 我只看了前10句,不敢看了nbsp;【转】
- LCD显示屏和LED显示屏的区别,LCD液晶屏与LED显示屏什么区别