Swift 中的闭包和 Objective-C 中的Block

1.讲解Demo,下载:http://download.csdn.net/detail/sinat_20037505/9773849


2.讲解目录

let array = [

// MARK: - iOS: ARC和非ARC下使用Block属性的问题

"TestVC27",

// MARK: - Block 为什么用copy修饰1

"TestVC26",0)"> // MARK: - Block传参数使用例子2

"TestVC25",

// MARK: - Block传参数使用例子1

"TestVC24",

// MARK: - Block 是用来跨类使用的,在同一个类中定义一个Block使用这个Block完全没有必要。

"TestVC23",0)"> // MARK: - Block 语法

"TestVC22",0)"> // MARK: - Block __block关键字的使用

"TestVC21",0)"> // MARK: - Objective-C __unsafe_unretained __weak

"TestVC20",0)"> // MARK: - [重要]使用Swift推荐的方式解除循环引用 [uNowned self]

"TestVC19",0)"> // MARK: - [重要]使用Swift推荐的方式解除循环引用 [weak self]

"TestVC18",0)"> // MARK: - [重要]使用 Objective-C 的方式解除循环引用

"TestVC17",0)"> // MARK: - 使用 Swift实现循环引用,就是什么情况导致循环引用,不要说没有遇到过

// MARK: 闭包中使用self,就当前对象强引用,控制器(可以接受闭包的任意对象)以属性记录闭包(强引用)

"TestVC16",


// MARK: - Swift uNowned解决循环强引用

"TestVC15",0)"> // MARK: - Swift weak解决循环强引用

"TestVC14",0)"> // MARK: - Swift uNowned引用

"TestVC13",0)"> // MARK: - Swift weak引用

"TestVC12",0)"> // MARK: - Swift weak uNowned解决闭包引起的循环强引用问题

"TestVC11",0)"> // MARK: - Swift闭包属性引起的循环强引用

"TestVC10",0)"> // MARK: - 闭包传值使用2

"TestVC9",0)"> // MARK: - 闭包传值使用1

"TestVC8",0)"> // MARK: - Swift闭包表达式作为回调函数

// MARK: 闭包传参数,Controller之间用闭包传递参数

"TestVC7",0)"> // MARK: - Swift闭包捕获值

"TestVC6",0)"> // MARK: - Swift嵌套函数

"TestVC5",0)"> // MARK: - Swift闭包表达式尾随闭包

"TestVC4",0)"> // MARK: - Swift闭包表达式语法优化

"TestVC3",0)"> // MARK: - Swift闭包表达式作为回调函数

"TestVC2",0)"> // MARK: - Swift闭包表达式的语法

"TestVC1",0)"> // MARK: - Swift中闭包的概念和分类

// MARK: sorted函数

// MARK: 运算符函数

"RootViewController"

]

self.makeController(array: array)

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...