美文网首页swift
Swift语法糖的使用

Swift语法糖的使用

作者: 鸟人扎墨客 | 来源:发表于2016-12-05 11:47 被阅读131次

Swift语法糖的使用

这个是哪里看的忘记了,反正内容不是我写的

  • 语法糖的简介
  • 语法糖Selector例子

语法糖的简介

语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。

我个人对语法糖的理解就是让你的代码更加有逼格,别人阅读代码的时候会觉得你的代码很工整,也方便维护

Swift 实例

创建控制器,添加Button

  override func viewDidLoad() {
        super.viewDidLoad()
        
        let btn = UIButton(frame: CGRectMake(100,100,100,100))
        btn.backgroundColor = UIColor.redColor()
        view.addSubview(btn)
            
    }
    
    func printFire() {
        print("fire")
    }

想实现控制器里的Button点击事件,但是,如果一个控制器里的Button特别的多,那添加Button点击事件的Selector 会觉得特别的臃肿。所以语法糖就是要拓展Selector

private extension Selector {
    
    static let printFire = #selector(ViewController.printFire)
    
}

我们现在给viewDidLoad方法中的Button 添加点击事件

btn.addTarget(self, action: .printFire, forControlEvents: .TouchUpInside)

如果Button过多的话,用语法糖方便管理Button的点击事件,又不会把点击事件变得过于臃肿

下面是控制器的完整代码

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        let btn = UIButton(frame: CGRectMake(100,100,100,100))
        btn.backgroundColor = UIColor.redColor()
        btn.addTarget(self, action: .printFire, forControlEvents: .TouchUpInside)
        view.addSubview(btn)
     
        
    }
    
    func printFire() {
        print("fire")
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

private extension Selector {
    
    static let printFire = #selector(ViewController.printFire)
    
}


相关文章

  • Swift语法糖的使用

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

  • Swift语法糖的使用

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

  • Swift Then语法糖使用教程

    简介 Then是一个Swift初始化库,使用非常简洁和优雅,大大提高代码可阅读性。 开始使用 依赖 切换到项目目录...

  • swift 可选类型(optional)

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

  • 对swift中的扩展进行"分组"

    在swift中对类和struct进行扩展或使用协议扩展(本质是mixin),是非常简单且实用的语法。但是语法糖太好...

  • swift Selector事件

    最近处理点击事件,感觉不是很理想,繁碎; 看了swift Selector语法糖,使用extension来处理点击...

  • swift - 语法糖 - ??

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

  • swift 语法糖

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

  • swift 语法糖

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

  • Swift最新语法总结

    swift最新语法总结(函数) swift最新语法总结(枚举类型与结构体) swift最新语法总结(类的使用) s...

网友评论

    本文标题:Swift语法糖的使用

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