歡迎回來,這一節(jié),我們基于之前實現(xiàn)的MockURLSession和MockURLSessionDataTask來測試WeatherDataManager中和網絡通信相關的功能...
歡迎回來,這一節(jié),我們基于之前實現(xiàn)的MockURLSession和MockURLSessionDataTask來測試WeatherDataManager中和網絡通信相關的功能...
我們實現(xiàn)weatherDataAt方法的時候,其實犯了一個小錯誤。就是,在調用完URLSession.shared.dataTask之后,沒有調用resume()方法開始執(zhí)行...
我們把請求DarkSky的代碼封裝起來,以降低這部分代碼在未來對我們App的影響。并為這部分的單元測試,做一些準備工作。 設計DataManager 為了封裝DarkSky的...
這一節(jié),我們根據(jù)之前設計的UI,設計對應的Model。 DarkSky API 首先,來了解一個簡單好用的天氣API服務:DarkSky[https://darksky.ne...
在這個系列里,我們通過從零開始開發(fā)一個完整的天氣App - Sky,來理解并掌握MVVM的編程思想。并且,在這個過程中,我們還會引入RxCocoa、單元測試,以及UI測試等內...
我們繼續(xù)完成App的后半部分,基于RxDatasource,用reactive的方式處理UITableView。 準備工作 為了方便演示,基于上個視頻完成的例子,我們做了一些...
項目準備工作 我們的App會在Github上搜索特定名稱的項目,在UITextField里輸入項目名稱,我們就自動在Github上搜索項目的名字,并在下面的UITableVi...
接下來,我們繼續(xù)實現(xiàn)上個視頻中未完成的例子。首先來處理UISwitch和UISlider聯(lián)動。 對于UISwitch來說: 當UISwitch為OFF時,表示用戶不了解Swi...
對初始項目的改動 為了演示RxSwift的用法,我們對上一個視頻用到的項目,做了以下改動: 首先,給Sign Up添加了一個Segue,點擊后,會切換到一個用戶提交各種信息的...
了解了RxSwift[https://github.com/ReactiveX/RxSwift]的基本概念和用法之后,我們通過一系列視頻向大家介紹如何用RxSwift[htt...
演示 學習內容 創(chuàng)建自定義形狀 為自定義形狀添加漸變顏色 動畫自定義形狀 開始 啟動一個新的Xcode項目: 開啟Xcode 創(chuàng)建一個新的Xcode項目 選擇單視圖應用程序,...
我們了解了創(chuàng)建Observable以及訂閱事件的方法。我們關注回收Observable使用的資源問題。 在繼續(xù)之前,我們要先補充一點小知識。對于一個Observable來說,...
通過UITextField的rx_text屬性體會了“事件數(shù)組”的概念和用法之后,我們通過這正式向大家介紹RxSwift[https://github.com/Reactiv...