您的位置:首页 > 移动开发 > Swift

Swift 的闭包使用(1)

2016-02-12 14:55 363 查看
swift中 仿照oc中的block

typealias 是用来为已经存在的类型重新定义名字的,通过命名,可以使代码变得更加清晰。使用的语法也很简单。

[code]typealias SelectedBlock = (view :UIView,selectIndex:Int)->()


定义一个闭包变量

[code] var block: SelectedBlock?


只需要调用传入相关参数(本例子是self,index)两个参数

[code] if block != nil {
        self.block!(view: self,selectIndex: index)
 }


定义一个方法供其他类使用

[code] func didSelectBlock(selectedEvent:SelectedBlock) {
    block = selectedEvent
}


其他类中引用:(demo就相当于实例,无视掉它的初始化 ,直接看didSelectBlock方法)

[code]let demo = SlideView(frame: CGRectMake(0, 20, SCREEN_WIDTH ,SCREEN_HIGH - 20), withTitle: titles, withViews: views)

demo.didSelectBlock { (view, selectIndex) -> Void in
        print(selectIndex)
        switch selectIndex {
        case 0:
            "0"
        case 1:
            "1"
        default:  
            "2"  
        }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: