iOS UILabel设置行间距和字间距
实现UILabel的文字,设置行间距和字间距。
效果图:

代码:
let lblTitle = UILabel(frame: CGRect(x: , y: , width: KScreenWidth-, height: ))
lblTitle.textColor = UIColor.white
lblTitle.backgroundColor = UIColor.darkGray
lblTitle.textAlignment = .center
lblTitle.numberOfLines =
lblTitle.font = UIFont.systemFont(ofSize: )
lblTitle.text = "SDCycleScrollView之前一直在OC中使用觉得很简单又熟悉了所以这次写的Demo依旧搬了过来.SDCycleScrollView之前一直在OC中使用觉得很简单又熟悉了所以这次写的Demo依旧搬了过来."
self.view.addSubview(lblTitle) let attrStr = NSMutableAttributedString(string: lblTitle.text!)
//设置行间距
let style:NSMutableParagraphStyle = NSMutableParagraphStyle()
style.lineSpacing = //行间距(垂直上的间距)
style.lineBreakMode = .byCharWrapping //英文字符拆开显示,byWordWrapping表示不拆开显示
style.alignment = .center //居中显示(如果要设置alignment,这个必须设置,因为label的textAlignment会无效)
style.firstLineHeadIndent = 25.0 //设置首行字符缩进距离
style.headIndent = //每行的左右间距
attrStr.addAttribute(NSParagraphStyleAttributeName, value: style, range: NSRange(location: , length: (lblTitle.text?.characters.count)!))
//设置字间距
attrStr.addAttribute(NSKernAttributeName, value: 1.5, range: NSRange(location: , length: (lblTitle.text?.characters.count)!))
lblTitle.attributedText = attrStr
以上的参数,都可以自己根据需求封装方法。
行间距:lineSpacing
字间距:NSKernAttributeName 的value值
其他。。。
最后,如果要计算设置后的高度或size
把 NSParagraphStyleAttributeName、NSKernAttributeName两个属性设置完毕后,再作为 boundingRectWithSize 方法的 attributes属性 就行了。
参考网络:

enjoy~
iOS UILabel设置行间距和字间距的更多相关文章
- UILabel设置行间距和字间距并计算高度-b
#define UILABEL_LINE_SPACE 6 #define HEIGHT [ [ UIScreen mainScreen ] bounds ].size.height //给UILabe ...
- (转)iOS学习——UIlabel设置行间距和字间距
在iOS开发中经常会用到UIlabel来展示一些文字性的内容,但是默认的文字排版会觉得有些挤,为了更美观也更易于阅读我们可以通过某些方法将UIlabel的行间距和字间距按照需要调节. 比如一个Labe ...
- UILabel的行间距,字间距处理
啥都不说了,直接上代码,做了一个Category #import <UIKit/UIKit.h> @interface UILabel (ChangeLineSpaceAndWordSpa ...
- 使用CSS设置行间距,字间距.
字间距1.text-indent设置抬头距离css缩进即对,对应div设置css样式text-indent : 20px; 缩进了20px 2.letter-spacing来设置字与字间距_字符间距离 ...
- css如何设置label的字间距
css.html如何设置label的字间距 .myClass label{ letter-spacing: 10px; } 如果label需要居中,需加上 text-indent: 10px; 首行 ...
- UILabel设置行间距
UILabel设置行间距: NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWi ...
- Lodop设置文本项行间距、字间距
LODOP给文本项ADD_PRINT_TEXT设置字间距.行间距,可以在打印设计页面,右键属性里设置,然后在打印设计生成代码,也可以直接写代码.LineSpacing行间距.LetterSpacing ...
- iOS UILabel自定义行间距
NSString *hintStr = @"输入材料标题搜索材料\n注:可根据材料序号直接搜索, 如TPO23"; CGSize size = [toolset returnTex ...
- (转载)iOS UILabel自定义行间距时获取高度
本文介绍一下自定义行间距的UILabel的高度如何获取,需要借助一下开源的UILabel控件:TTTAttributedLabel 附下载地址 https://github.com/TTTAttrib ...
随机推荐
- 什么是BFC(Block Formatting Context)
原文:https://segmentfault.com/a/1190000012221820 https://www.w3.org/TR/CSS2/visuren.html#block-formatt ...
- CSS中的图片路径问题
CSS中的背景图片写了相对路径,为什么不显示那? [解决方法] CSS中的背景图片路径应该写成相对于当前CSS文件的路径,而不是针对网站根目录的相对路径.
- 【Android开发VR实战】二.播放360°全景视频
转载请注明出处:http://blog.csdn.net/linglongxin24/article/details/53924006 本文出自[DylanAndroid的博客] [Android开发 ...
- pycharm+python+Django之web开发环境的搭建(windows)
转载:https://blog.csdn.net/yjx2323999451/article/details/53200243/ pycharm+python+Django之web开发环境的搭建(wi ...
- 微服务架构实践 - 你只懂docker与spring boot就够了吗?
微服务架构实践 - 你只懂docker与spring boot就够了吗? 作者 浮云发发 已关注 2017.02.27 02:50* 字数 2613 阅读 2583评论 6喜欢 35赞赏 2 微服务并 ...
- javascript的冒泡排序, 快速排序, 选择排序, 插入排序
冒泡排序, 最经典的排序, 把比较大的数字往后放, 和选择排序恰恰相反: <!DOCTYPE html> <html lang="en"> <head ...
- archivedDataWithRootObject NSUserDefaults
archivedDataWithRootObject 存储 BusinessCard *bc = [[BusinessCard alloc] init]; NSUserDefaults *ud = ...
- js检测来源网址,如果是搜索引擎跳转到新地址
[js]代码 <script> var regexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|118114|biso|gougou|if ...
- 关于Selenium Chrome Driver相关的一些资源
这里摘录一些处理所需要的jar包,以及对照关系等. 参考: selenium-chrome-driver-2.22.0.jar:http://www.java2s.com/Code/Jar/s/Dow ...
- mysql数据库配置优化(占cpu过高问题)
MySQL5.6的my.ini配置 提供一个MySQL 5.6版本适合在1GB内存VPS上的my.cnf配置文件(点击这里下载文件): [client] port = 3306 socket = /t ...