不忘初心,方得始終
作為簡書的新成員,懷著惴惴不安的心情寫下第一篇。
ReactiveCocoa在OC年代,我表示沒有接觸過,最近由于面試的關系,急需入手ReactiveCocoa技能包。
在正式開始之前,對于查閱資料,有點點想說的:
- 不要盲目使用baidu,google才是碼農的正途。
- 首先首先首先(說三遍)入手的應該還是官網。
Step One:敲開官網的大門
https://github.com/ReactiveCocoa/ReactiveCocoa
Step Two:閑話不多說,找到Getting started
看ReactiveCocoa官方的意思是推薦使用Carthage來管理并添加ReactiveCocoa,對于熟悉CocoaPods的同學可以直接出門右拐去獲取CocoaPods的ReactiveCocoa配置了。
注意:Carthage僅支持動態庫,并且僅在iOS8以上可用,而且似乎僅僅支持git倉庫?
Step Three:搞掂Carthage配置,使用CocoaPods的可以略過
Carthage是個什么東東,和CocoaPods有何不同,可以去Carthage官網自行學習,想看中文版的請參考Carthage使用說明。
1.首先安裝Carthage:
- 第一種安裝方法:
- 進入Carthage安裝包下載頁。
- 下載Carthage.pkg安裝。
- 第二種安裝方法,cli安裝:
brew update
brew install carthage
2.安裝完成創建Carthage文件:
新建一個iOS項目,在項目的根目錄下創建名為Cartfile的文件,寫入如下內容:
# Require version 4.2.2 or later
github "ReactiveCocoa/ReactiveCocoa" >= 4.2.2
>=和=的區別:=代表從從指定版本到倒數第二位版本號升1為止,本示例中則表示 4.2.2 <= 版本 < 4.3.0。
3.項目根目錄下運行:
carthage update
由于網絡原因,我試了3次最終才更新成功,大概更新了5分鐘左右,項目根目錄下生成了Cartifile.resolved文件和Carthage文件夾
Carthage目錄機構
Carthage/Checkouts/目錄下放的就是下載好的動態庫文件了。
4.利用xcode打開項目
添加依賴庫
5.在打開的Embedded Binaries窗口添加ReactiveCocoa動態庫
打開添加依賴庫對話框
選擇依賴項
6.新建Build Phases
新建Build Phases
添加shell腳本
Step Four:項目中利用ReactiveCocoa編寫代碼
import ReactiveCocoa
...
let textField = UITextField()
let textString = textField.rac_textSignal()
.toSignalProducer()
.map { text in text as! String }
...
折騰的滿頭大汗,終于寫完入門第一篇了,希望是一個不錯的開始。