美文网首页
学习swift第一天 UILabel

学习swift第一天 UILabel

作者: 哎呦我去叫什么呢 | 来源:发表于2020-05-29 10:04 被阅读0次

Swift 是苹果推出的编程语言,专门针对 OS X 和 iOS 的应用开发。Swift 在各个方面优于 Objective-C,也不会有那么多复杂的符号和表达式。同时,Swift 更加快速、便利、高效、安全

首先我们要创建一个swift的工程 截屏2020-05-29 09.28.34.png

创建之后就可以进行下一步了
我之前对swift没有什么接触,所以学习方法都是自己想学什么就是什么不是特别系统,我是从UI开始学的
创建一个UILabel

    //        创建
        let label = UILabel()
        label.frame = CGRect(x: 50, y: 100, width: 50, height: 30)
//        设置显示的文字
        label.text = "测试"
        label.backgroundColor = .red//背景颜色
        label.textColor = .black//文字颜色
        label.font = UIFont .systemFont(ofSize: 11)//字体大小
        label.textAlignment = .left//设置文字对齐方式
        label.numberOfLines = 0//设置行数
        // 字符串的截取
        label.lineBreakMode = NSLineBreakMode.byTruncatingMiddle
        view .addSubview(label)//添加在父视图上

byWordWrapping: 以单词为显示单位,后面的部分省略不显示
byCharWrapping: 以字符为显示单位,后面的部分省略不显示
byClipping: 以剪切与文本宽度相同的内容长度,后半部分被删除
byTruncatingHead: 开头省略,显示尾部文字内容 (...xxxxxxxx)
byTruncatingTail: 结尾省略,显示开头部分文字内容(xxxxxxx...)
byTruncatingMiddle:中间省略,显示开头和结尾部分文字(xxxx...xxxx)

当不确定label的高度的时候

/// 根据文本、字体、获取UILabel的宽和高
    ///
    /// - Parameters:
    ///   - text: 文本
    ///   - font: 字体
    ///   - maxSize: 最大的宽和高,比如(280,MAXFLOAT)
    /// - Returns: 返回实际需要的rect
    func getLabelHeigth(texe:NSString,font:UIFont,maxSize:CGSize) -> CGRect {
//        NSFontAttributeName
        let attr = [NSAttributedString.Key.font:font]
        let option = NSStringDrawingOptions.usesLineFragmentOrigin
        return texe.boundingRect(with: maxSize, options: option, attributes: attr, context: nil)
        
    }

调用计算的方法

 let str = "1234567890-wertyuiop[zxcvbnm,.rtyuiopZewxrctvybunimk nbvgcdxretdfyugihjl;ml,nh gftxryfgukhlj.,mnyfgukhnmkl;lm,m nlm.,m nnkl nlk nk, m"
        label.text = str
        let rect = getLabelHeigth(texe: str as NSString, font: label.font, maxSize: CGSize(width: 180, height: 80))
        label.frame = CGRect(x: 50, y: 100, width: 200, height: rect.height)

还可以对UILabel进行美化

label.layer.cornerRadius = 10//设置圆角
        // 设置阴影颜色
        label.shadowColor = UIColor.lightGray
        // 设置阴影偏移量,这里表示阴影向下和向右都偏移了2px
        label.shadowOffset = CGSize(width: 2, height: 2)

现在就是学习到这么多了,第一天学习swift请大家多多指教呀

相关文章

网友评论

      本文标题:学习swift第一天 UILabel

      本文链接:https://www.haomeiwen.com/subject/vaatzhtx.html