zoukankan      html  css  js  c++  java
  • iOS UILabel设置行间距和字间距

    实现UILabel的文字,设置行间距和字间距。 

    效果图:

    代码:

            let lblTitle = UILabel(frame: CGRect(x: 10, y: 150,  KScreenWidth-20, height: 100))
            lblTitle.textColor = UIColor.white
            lblTitle.backgroundColor = UIColor.darkGray
            lblTitle.textAlignment = .center
            lblTitle.numberOfLines = 0
            lblTitle.font = UIFont.systemFont(ofSize: 12)
            lblTitle.text = "SDCycleScrollView之前一直在OC中使用觉得很简单又熟悉了所以这次写的Demo依旧搬了过来.SDCycleScrollView之前一直在OC中使用觉得很简单又熟悉了所以这次写的Demo依旧搬了过来."
            self.view.addSubview(lblTitle)
    
            let attrStr = NSMutableAttributedString(string: lblTitle.text!)
            //设置行间距
            let style:NSMutableParagraphStyle  = NSMutableParagraphStyle()
            style.lineSpacing = 10              //行间距(垂直上的间距)
            style.lineBreakMode = .byCharWrapping       //英文字符拆开显示,byWordWrapping表示不拆开显示
            style.alignment = .center           //居中显示(如果要设置alignment,这个必须设置,因为label的textAlignment会无效)
            style.firstLineHeadIndent = 25.0    //设置首行字符缩进距离
            style.headIndent = 5                //每行的左右间距
            attrStr.addAttribute(NSParagraphStyleAttributeName, value: style, range: NSRange(location: 0, length: (lblTitle.text?.characters.count)!))
            //设置字间距
            attrStr.addAttribute(NSKernAttributeName, value: 1.5, range: NSRange(location: 0, length: (lblTitle.text?.characters.count)!))
            lblTitle.attributedText = attrStr

    以上的参数,都可以自己根据需求封装方法。

    行间距:lineSpacing

    字间距:NSKernAttributeName 的value值

    其他。。。

    最后,如果要计算设置后的高度或size

    把 NSParagraphStyleAttributeName、NSKernAttributeName两个属性设置完毕后,再作为 boundingRectWithSize 方法的 attributes属性 就行了。

    参考网络:

    enjoy~

  • 相关阅读:
    Spark1.0.0 源码编译和部署包生成
    Spark入门实战系列--2.Spark编译与部署(下)--Spark编译安装
    CentOS 64位上编译 Hadoop 2.6.0
    Centos 6.5 X64 环境下编译 hadoop 2.6.0 --已验证
    ubuntu 环境下编译 hadoop 2.6.0的简单方法
    在Linux上编译Hadoop-2.4.0实践与总结
    linux安装openssl
    ubuntu 安装 GCC 和 G++ C++ 开发环境
    ubuntu如何安装 adobe flash player或adobe插件
    linux编译64bitHadoop (eg: ubuntu14.04 and hadoop 2.3.0)
  • 原文地址:https://www.cnblogs.com/yajunLi/p/7146482.html
Copyright © 2011-2022 走看看