1. 在歡迎窗口右側(cè)的歷史項(xiàng)目列表中,雙擊打開(kāi)之前創(chuàng)建的單視圖項(xiàng)目模板。
2. 本節(jié)課將為您演示,如何調(diào)整單元格在表格中的位置。首先在一個(gè)空白項(xiàng)目中,打開(kāi)視圖控制器的代碼文件。
3. 接著開(kāi)始編寫代碼,實(shí)現(xiàn)這項(xiàng)功能。
4. 首先添加兩個(gè)代理協(xié)議。一個(gè)是表格視圖的數(shù)據(jù)源協(xié)議,另一個(gè)是表格視圖的代理協(xié)議。
5. 然后創(chuàng)建一個(gè)數(shù)組,作為表格的數(shù)據(jù)來(lái)源。
6. 創(chuàng)建一個(gè)位置在(0, 40),尺寸為(320, 420)的顯示區(qū)域。
7. 初始化一個(gè)表格視圖,并設(shè)置其位置和尺寸信息。
8. 設(shè)置表格視圖的代理,為當(dāng)前的視圖控制器類。
9. 設(shè)置表格視圖的數(shù)據(jù)源,為當(dāng)前的視圖控制器類。
10. 在默認(rèn)狀態(tài)下,開(kāi)啟表格的編輯模式。
11. 然后將表格視圖,添加到當(dāng)前視圖控制器的根視圖中。
12. 添加一個(gè)代理方法,用來(lái)設(shè)置表格視圖的行數(shù)。在此使用數(shù)組的長(zhǎng)度,作為表格視圖的行數(shù)。
13. 添加一個(gè)代理方法,用來(lái)初始化或復(fù)用表格視圖中的單元格。
14. 創(chuàng)建一個(gè)字符串,作為單元格的復(fù)用標(biāo)識(shí)符。
15. 單元格的標(biāo)識(shí)符,可以看作是一種復(fù)用機(jī)制。此方法可以從,所有已經(jīng)開(kāi)辟內(nèi)存的單元格里面,選擇一個(gè)具有同樣標(biāo)識(shí)符的、空閑的單元格。
16. 如果在可重用單元格隊(duì)列中,沒(méi)有可以重復(fù)使用的單元格,則創(chuàng)建新的單元格。新的單元格具有系統(tǒng)默認(rèn)的單元格樣式,并擁有一個(gè)復(fù)用標(biāo)識(shí)符。
17. 獲取當(dāng)前單元格,在段落中的行數(shù)。
18. 根據(jù)當(dāng)前單元格的行數(shù),從數(shù)組中獲取對(duì)應(yīng)位置的元素,作為當(dāng)前單元格的標(biāo)題文字。
20. 添加一個(gè)代理方法,用來(lái)設(shè)置單元格的編輯模式。
21. 添加一個(gè)代理方法,用來(lái)設(shè)置單元格是否允許拖動(dòng)換行。
22. 再次添加一個(gè)代理方法,用來(lái)響應(yīng)單元格的移動(dòng)事件。
25. 獲得數(shù)組在單元格移動(dòng)前的對(duì)象。
26. 刪除數(shù)組中單元格移動(dòng)前位置的對(duì)象。
27. 然后在數(shù)組中的目標(biāo)位置,重新插入一份刪除的對(duì)象,以同步數(shù)據(jù)源,并保證數(shù)據(jù)與界面的一致性。接著點(diǎn)擊[編譯并運(yùn)行]按鈕,啟動(dòng)模擬器預(yù)覽項(xiàng)目。
28. 在彈出的模擬器中,鼠標(biāo)從上往下拖動(dòng)任一單元格,觀察拖動(dòng)效果。
29. 點(diǎn)擊[停止]按鈕,關(guān)閉模擬器,并結(jié)束本節(jié)課程。
本文整理自:《互動(dòng)教程 for Xcode9 & Swift4》,真正的[手把手]教學(xué)模式,用最快的速度上手iOS開(kāi)發(fā),蘋果商店App Store免費(fèi)下載:https://itunes.apple.com/cn/app/id1063100471,或掃描本頁(yè)底部的二維碼。課程配套素材下載地址:資料下載




























