关于swift的基础知识

php中世界最好的语言
Lepaskan: 2018-03-12 16:31:23
asal
1272 orang telah melayarinya

这次给大家带来关于swift的基础知识,关于swift基础知识的注意事项有哪些,下面就是实战案例,一起来看一下。

cmd + ctrl + e  替换相同对象名字

cmd + shift + o  搜索查找

使用 guard 语法, 依次判断每一项是否有值, 只要有一项为 nil, 就不再执行后续的代码!

guard let pty = list?[i],           let cName = property_getName(pty),           let name = String(utf8String: cName)          else{                    // 这个guard 在for循环里面,不能写return                    // 继续遍历下一个                    continue}
在闭包中调属性, 需要用self.调用
loadData { (list) in            print(list)            // `拼接`数组, 闭包中定义好的代码, 在需要的时候执行, 需要 self. 指定语境             self.personList += list            // 刷新表格 }
Salin selepas log masuk

类型转换 as
Swift 中 String 之外, 绝大部分使用as 需要? / !
as! / as? 直接根据前面的返回值来决定
注意: if let / guard let 判空语句, 一律使用 as?

let vc = segue.destination as! DetailViewController        
// 设置选种的 person, indexPathif let indexPath = sender as? IndexPath {      // indexPath 一定有值
      vc.person = personList[indexPath.row]
}
Salin selepas log masuk

闭包回调传值

声明一个闭包属性

//闭包是可选的var completionCallBack: (()->())?
Salin selepas log masuk

2.调用闭包传值

// 执行闭包回调// OC 中执行block前都必须判断是否有值, 否则容易崩溃// ! 强行解包 (Xcode 帮助修订, 一定不要用 `!`)// ? 可选解包 -> 如果 闭包为 nil, 就什么也不做completionCallBack?()
Salin selepas log masuk

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

相关阅读:

Rxjs的使用详解

在HTML中用CSS实现文本截断

Atas ialah kandungan terperinci 关于swift的基础知识. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan