歡迎回來(lái),這一節(jié),我們基于之前實(shí)現(xiàn)的MockURLSession和MockURLSessionDataTask來(lái)測(cè)試WeatherDataMan...
我們實(shí)現(xiàn)weatherDataAt方法的時(shí)候,其實(shí)犯了一個(gè)小錯(cuò)誤。就是,在調(diào)用完URLSession.shared.dataTask之后,沒(méi)有調(diào)...
我們把請(qǐng)求DarkSky的代碼封裝起來(lái),以降低這部分代碼在未來(lái)對(duì)我們App的影響。并為這部分的單元測(cè)試,做一些準(zhǔn)備工作。 設(shè)計(jì)DataManag...
這一節(jié),我們根據(jù)之前設(shè)計(jì)的UI,設(shè)計(jì)對(duì)應(yīng)的Model。 DarkSky API 首先,來(lái)了解一個(gè)簡(jiǎn)單好用的天氣API服務(wù):DarkSky[htt...
在這個(gè)系列里,我們通過(guò)從零開(kāi)始開(kāi)發(fā)一個(gè)完整的天氣App - Sky,來(lái)理解并掌握MVVM的編程思想。并且,在這個(gè)過(guò)程中,我們還會(huì)引入RxCoco...
我們繼續(xù)完成App的后半部分,基于RxDatasource,用reactive的方式處理UITableView。 準(zhǔn)備工作 為了方便演示,基于上...
項(xiàng)目準(zhǔn)備工作 我們的App會(huì)在Github上搜索特定名稱的項(xiàng)目,在UITextField里輸入項(xiàng)目名稱,我們就自動(dòng)在Github上搜索項(xiàng)目的名字...
接下來(lái),我們繼續(xù)實(shí)現(xiàn)上個(gè)視頻中未完成的例子。首先來(lái)處理UISwitch和UISlider聯(lián)動(dòng)。 對(duì)于UISwitch來(lái)說(shuō): 當(dāng)UISwitch為...
對(duì)初始項(xiàng)目的改動(dòng) 為了演示RxSwift的用法,我們對(duì)上一個(gè)視頻用到的項(xiàng)目,做了以下改動(dòng): 首先,給Sign Up添加了一個(gè)Segue,點(diǎn)擊后,...