美文网首页iOS DevSwiftswift
Swift语法糖---初始化Then

Swift语法糖---初始化Then

作者: calm1993 | 来源:发表于2018-04-24 12:03 被阅读816次

Then是一个swift初始化库,只有80几行的代码库,确可以让初始化变得很优雅

  • 使用then初始化AnyObject,这里以初始化控件为例
    lazy var label = UILabel().then({
        $0.text = "label"
        $0.textColor = .blue
    })
    let redView = UIView().then { (make) in
        make.backgroundColor = .red
        make.frame = CGRect(x: 50, y: 50, width: 100, height: 100)
    }
    let button = UIButton().then ({
            $0.setTitle("点我", for: .normal)
            $0.setTitleColor(.red, for: .normal)
        })
  • 如果布局这样还不简单那就只能来骚的了,ThenSnapKit一起使用的方式
    let button1 = UIButton().then { (make) in
            make.setTitle("登录", for: .normal)
            make.setTitleColor(.black, for: .normal)
            view.addSubview(make)
            
            make.snp.makeConstraints({ (make) in
                make.top.left.right.equalTo(0)
                make.height.equalTo(100)
            })
        }
  • 或者你还可以这样
    let button2 = UIButton().then({
        $0.setTitle("登录", for: .normal)
        $0.setTitleColor(.black, for: .normal)
        view.addSubview($0)
        
        $0.snp.makeConstraints({
            $0.top.equalTo(button1.snp.bottom)
            $0.left.right.equalTo(0)
            $0.height.equalTo(50)
        })
      })
  • 其他用法
    let newFrame = oldFrame.with {
          $0.size.width = 200
          $0.size.height = 100
    }
    newFrame.width // 200
    newFrame.height // 100
    UserDefaults.standard.do {
        $0.set("devxoul", forKey: "username")
        $0.set("devxoul@gmail.com", forKey: "email")
        $0.synchronize()
    }

Then: Github

相关文章

  • Swift语法糖---初始化Then

    Then是一个swift初始化库,只有80几行的代码库,确可以让初始化变得很优雅 使用then初始化AnyObje...

  • Swift语法糖的使用

    Swift语法糖的使用 语法糖的简介 语法糖Selector例子 语法糖的简介 我个人对语法糖的理解就是让你的代码...

  • Swift语法糖的使用

    Swift语法糖的使用 这个是哪里看的忘记了,反正内容不是我写的 语法糖的简介 语法糖Selector例子 语法糖...

  • swift 可选类型(optional)

    可选类型定义 Swift 标准库中定义后缀 ?为可选类型 Optional 的语法糖,这里语法糖...

  • swift - 语法糖 - ??

    声明变量的时候指定为空时候的默认值var font = tFont ?? UIFont.systemFont(...

  • swift 语法糖

    if let 与 guard 语法糖 话说if let 和 guard 只是语法糖,没有也可以,但有了可以使得代码...

  • swift 语法糖

    String 根据index找到string中的character #[https://blog.csdn.net...

  • switf小笔记

    不怎么写swift记录一下先 Swift:Selector 语法糖 引用自 https://developer.5...

  • swift中懒加载的then语法

    原文:Swift:让人眼前一亮的初始化方式 then语法

  • Swift:Selector 语法糖

    作者:Andyy Hope,原文链接,原文日期:2016-03-23译者:saitjr;校对:numbbbbb;定...

网友评论

    本文标题:Swift语法糖---初始化Then

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