释放双眼,带上耳机,听听看~!

可以在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文字的行间距和字间距相关推荐

  1. ios label文字行间距_iOS 设置UILabel行间距【原创】

    今天在项目中遇到需要设置较多文字的行间距问题,得到解决办法分享给大家. 下面贴出代码供参考: 1.正常使用 UILabel *label = [[UILabel alloc] initWithFram ...

  2. Java安卓文字居中_设置TextView文字居中,代码实现android:layout_gravity

    设置TextView文字居中 android:gravity指的是控件的位置 而android:layout_gravity指的是这个layout的,是外面的 有2种方法可以设置TextView文字居 ...

  3. ios label文字行间距_iOS 设置label的行间距教程

    //方式二 UILabel *label3 = [[UILabel alloc]init]; label3.frame=CGRectMake(200, 50, 70, 60); label3.text ...

  4. html居右显示语言设置,iOS开发:纯代码设置UIButton文字居左或者居右显示

    UIButton这个控件使用,作为资深的iOS开发人员来说是小儿科,但是有些时候还是需要记录一下UIButton的一些其他用法,这样方便快速解决实际问题.比如UIButton的纯代码编程的时候,设置文 ...

  5. ios label 高度紫石英_IOS开发中UILabel自适应大小显示的方法

    1,根据label中的文字内容自动换行显示的方法 1>,认识两个属性 @property(nonatomic) NSIntegernumberOfLines; @property(nonatom ...

  6. 在html设置文字位置,html设置怎么文字的位置

    html设置文字位置的方法:首先使用position属性设置文字元素的定位类型(绝对定位或固定定位):然后使用top.bottom.left和right属性设置文字元素偏移值,进而设置文字元素的位置. ...

  7. ios label 高度紫石英_iOS中iconfont(图标字体)的基本使用

    前言 近日在做项目时,项目组有提出iconfont的技术,便开始查询相关资料.iconfont技术的主要目的是为减少应用体积而生.首先icon代表图标 font代表字体.此技术便是将图标转化为字体,从 ...

  8. ios 部分string颜色_ios 设置字符串中某段字符的颜色

    1.提取URL NSMutableAttributedString*strMutable=[[NSMutableAttributedString alloc]initWithString:str]; ...

  9. JAVA的cell设置行间距_iOS设置tableView的cell之间的间距

    之前在网上找过很多设置间距,各有各的好处.这里介绍一种我常用的方法,目前没有碰到过什么问题,如果有问题,我会在后面补充说明. 1.创建一个tableView UITableView *myTableV ...

最新文章

  1. dispatchTouchEvent onInterceptTouchEvent onTouchEvent
  2. java发送消息_通过java给qq邮箱发送信息
  3. 化繁就简 · 万物互联,华为云All-Connect企业级云网络正式发布
  4. PX4避障和轨迹规划(3DVFH*)
  5. jquery获取复选框checkbox的值
  6. 2021腾讯广告大赛学习总结
  7. linux驱动数码管-基于74HC164D
  8. 排序算法7——图解快速排序(两种主元选择方法)以及CUTOFF时间测试
  9. 在chrome中f12控制自动刷新页面增加阅读量方法
  10. java基础知识入门大全(十年经验总结)
  11. 问题解决:“nginx: [emerg] unknown directive “ “ in /etc/nginx/conf.d/XXX.conf:122”
  12. DB2性能调整优化问题
  13. 如何oracle调试存储过程
  14. thingsboard-部件库开发 之 rpc-部件开发
  15. 内存容量大小单位转换
  16. 【疲劳检测】行为特征疲劳驾驶检测【含Matlab源码 944期】
  17. dbNSFP:非同义突变功能注释数据库
  18. 两个月运维工程师的工作总结及心得
  19. 我只看了前10句,不敢看了nbsp;【转】
  20. LCD显示屏和LED显示屏的区别,LCD液晶屏与LED显示屏什么区别

热门文章

  1. idea设置中文界面_《英雄联盟手游》游戏界面中文翻译图文分享 如何设置中文...
  2. js 字符串替换的坑(v1)
  3. 七个让你轻松减肥de小妙招
  4. 涂鸦NBIOT OpenCPU开发快速入门(三)
  5. 计算机辅助工程英文简称,工业常用的英文缩写
  6. 腾讯云:外网带宽使用率告警触发
  7. MFC中强制转换总结
  8. 从招聘网站爬取职位信息小窥IT发展
  9. c++string截取字符串
  10. PPT如何不改变排布、将多个元素同时等比例调整大小---组合+shift键