1. 程式人生 > >3.1 使用UIScrollView展示多個檢視控制器 [原創iOS開發-Xcode教程]

3.1 使用UIScrollView展示多個檢視控制器 [原創iOS開發-Xcode教程]

1. 本節課將為您演示多檢視控制器的使用。首先在歡迎視窗中,點選[建立一個新專案]選項,建立一個新的專案。 


2. 選擇建立一個簡單的單檢視應用。 


3. 點選下一步按鈕,進入下一步設定頁面。 


4. 在產品名稱輸入框內,點選輸入產品的名稱。 


5. 保持其它引數不變,點選下一步按鈕,進入下一步設定頁面。 


6. 選擇專案存放目錄,並點選建立按鈕,完成專案的建立。 


7. 在專案資料夾上點選滑鼠右鍵,彈出右鍵選單。 


8. 選擇新建檔案選項。您將陸續建立三個檢視控制器類檔案。 


9. 保持當前視窗的預設選擇,點選下一步按鈕,建立一個類。 


10. 在類名輸入框內,輸入類的名稱。 


11. 接著選擇或輸入父類的名稱。 



12. 點選下一步按鈕,進入下一步設定頁面。 


13. 保持預設的儲存位置,點選建立按鈕,完成類的建立操作。 


14. 在專案資料夾上點選滑鼠右鍵,彈出右鍵選單。接著建立第二個和第三個檢視控制器的類檔案。 


15. 選擇新建檔案選項。 


16. 保持當前視窗的預設選擇,點選下一步按鈕,建立一個類。 


17. 在類名輸入框內,輸入類的名稱。 


18. 點選下一步按鈕,進入下一步設定頁面。 


19. 保持預設的儲存位置,點選建立按鈕,完成類的建立操作。 


20. 在專案資料夾上點選滑鼠右鍵,彈出右鍵選單。 


21. 再次選擇新建檔案選項。 


22. 在類名輸入框內,輸入第三個檢視控制器的名稱。 


23. 然後點選下一步按鈕,進入下一步設定頁面。 



24. 保持預設的儲存位置,點選建立按鈕,完成類的建立操作。 


25. 接著為每個檢視控制器的根檢視,設定背景顏色。點選選擇第一個檢視控制器檔案。 


26. 現在開始編寫程式碼,實現這項功能,為當前檢視控制器的根檢視,設定背景顏色。 


27. 設定檢視的背景顏色為棕色,接著選擇第二個檢視控制器檔案。 


28. 接著為第二個檢視控制器的根檢視,設定背景顏色。 


29. 設定檢視的背景顏色為紫色,然後點選開啟另一個檢視控制器檔案。 


30. 首先為當前檢視控制器,新增滾動檢視的代理協議。 


31. 然後為檢視控制器,新增一個滾動檢視屬性。 


32. 滾動檢視是一個可以拖動的元件,無論是開發應用還是開發遊戲,您都會經常用到該元件。 



33. 繼續新增一個控制翻頁的屬性,使用它來控制滾動檢視的翻頁。通過該元件中的小白點,來觀察當前頁面的位置。 


34. 新增一個狀態屬性,用來標誌頁面的滑動狀態。 


35. 首先獲取當前裝置的螢幕尺寸資訊。 


36. 然後獲得螢幕尺寸的寬度值和高度值。 


37. 建立一個區域,來顯示之前建立的檢視控制器。 


38. 設定滾動檢視為分頁模式,即每滾動一次就是一頁。 


39. 設定滾動檢視的尺寸資訊。您有兩個頁面,所以將滾動檢視的寬度,設定為兩倍頁面寬度。 


40. 設定滾動檢視的背景顏色為黑色。 


41. 設定滾動檢視物件的代理為當前類,這樣就可以在當前檔案中,編寫代理方法,以捕捉滾動檢視的相關動作。 


42. 再建立一個高度常量,作為頁面控制器物件的高度。 


43. 然後建立一個區域,用來顯示頁面控制器物件。 


44. 設定頁面控制器物件的顯示區域。 


45. 接著設定頁面控制器物件的總頁數為兩頁。 


46. 設定頁面控制器物件的當前頁編號。 


47. 繼續設定頁面控制器物件的背景顏色為灰色。 


48. 給頁面控制器物件,新增監聽頁面切換事件的方法。 


49. 建立第一個檢視控制器物件的例項。 


50. 設定座標原點的橫向值為0。 


51. 設定第一個檢視控制器物件的顯示區域。 


52. 建立第二個檢視控制器物件的例項。 


53. 設定座標原點的x值為螢幕寬度,即第二個檢視控制器物件顯示在螢幕之外。 


54. 設定第二個檢視控制器物件的顯示區域。 


55. 將兩個檢視控制器的根檢視,分別新增到滾動檢視物件裡。 


56. 再把滾動檢視物件和頁面控制器物件,分別新增到當前視窗的根視圖裡。 


57. 建立監聽頁面切換事件的方法。 


58. 獲得當前頁面控制器物件的當前頁碼。 


59. 獲得滾動檢視當前的顯示區域。 


60. 根據頁面控制器物件的目標頁碼,計算滾動檢視在下一頁中的顯示區域。 


61. 然後滾動檢視到目標區域。 


62. 設定通過頁面控制器物件切換頁面。 


63. 建立監聽滾動檢視的滾動事件的代理方法。 


64. 如果是通過頁面控制器物件切換頁面,則不執行後面的程式碼。 


65. 獲得滾動檢視的寬度值。 


66. 根據滾動檢視的寬度值和橫向位移量,計算當前的頁碼。 


67. 設定頁面控制器的顯示頁碼,為通過計算所得的頁碼。 



本文整理自:《互動教程 for Xcode9 & Swift4》,真正的