天天看點

Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample

對于程式的目錄結構,完全是按照我個人的習慣所建立,由于結構對編譯運作沒有任何影響,是完全面向開發者的,是以盡量使用自己習慣的路數來搞比較高效。總體結構如圖。

Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample

1.本文按照業務功能(功能頁面)來劃分目錄結構,分為appdelegate、resources、datasources、view。

2.appdelegate(應用代理),作為應用的入口,理論上隻會有appdelegate這一個檔案。

3.resources(資源),負責管理配置檔案、storyboard、圖檔xcassets等資源,以後的coredata、影音等資源也會放入該目錄管理。

4.datasources(資料源),負責管理資料實體以及資料層服務,不同業務類型的資料将會以子目錄形式分類管理,每個子目錄都會存在資料實體模型、對應的操作服務(例如使用sqlite、coredata等組裝、操作資料的類)等類。本文僅包含化學元素實體以及對應的服務類(服務類僅僅實作從plist中擷取并排列組裝資料)

5.view(頁面),負責管理功能頁面以及頁面中的功能,不同業務類型的頁面會以子目錄形式分類管理,每個子目錄會存在view控制器controller、自定義view、資料集等子目錄,每個子目錄下根據需要包含對應的類。本文中包含tabbarview(頁簽)、tableview(清單)、detailview(明細頁面)三個子類。

storyboard作為官方推薦使用的頁面及頁面關系設計器,非常友善且直覺,可以節省很多代碼和控制。在新版本中增加了九宮格視圖,可以使開發者很輕松的就能做出相容各類蘋果産品的應用。本文的storyboard設計圖如下,與sample沒有差別,包含一個tabbarview,一個帶有導航navigation的tableview和一個空白view(detailview)。

Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample

1.tabbarview

首先,tabbarview的controller需要我們自定義,用來加載我們需要的頁簽。在tabbarviewcontroller目錄下建立pkoelementtabbarviewcontroller: uitabbarcontroller,并應用于tabbarview。

其次,通過control鍵拖動建立relationship segue過渡(官方翻譯為過渡,可以了解為跳轉的概念),指向navigationcontroller(若tableview還沒有添加導航,則指向tableview),使得頁簽能夠展示該導航及導航的主體。

tabbar的結構及配置如圖。

Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample

2.tableview

首先,tableview的controller需要我們自定義,用來加載我們需要的清單資料以及開打明細時資料的傳遞等。在tableviewcontroller目錄下建立pkoelementtableviewcontroller: uitableviewcontroller,應用于tableview。

其次,由于我們需要清單的每一列要顯示圖檔+文字的效果,是以還需要自定義一個cellview。在tableview目錄系建立pkoelementtableviewcell: uitableviewcell,應用于tableviewcell。在cell下添加一個用來顯示文字的label和用來顯示圖檔的空白view。

再次,由于清單的cell顯示的圖檔需要我們自己處理,是以還不要自定義一個用來顯示圖檔的view,在tableview目錄下建立pkoelementtableviewcellicon: uiview,應用于用來顯示圖檔的空白view。

然後,将tableview通過editor->embed in->navigation controller引入導航,并為導航添加一個storyboard id:"navfortableview",用于通過storyboard來查找這個navigation。

最後,通過control鍵拖動建立show segue過渡,指向detailview,使得點選清單cell能夠跳轉至明細頁面,并自動添加了傳回功能。

tableview及navigation的結構及配置圖如圖。

Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample

3.detailview

首先,detailview的controller需要我們自定義,用來繪制非常好看的明細頁面以展示資料以及添加動畫效果等。在detailcontroller目錄下建立pkoelementdetailviewcontroller: uiviewcontroller,應用于detailview。

其次,由于我們需要在明細頁面以圖檔的方式展示資料,是以還需要自定義一個view。在detailview目錄系建立pkoelementdetailimageview: uiview,這個自定義的view不應用于storyboard中任何一個view,完全由pkoelementdetailviewcontroller中通過代碼實作。

Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample
Swift教程_零基礎學習Swift完整執行個體(四)_swift完整執行個體(搭建程式結構、建構storyboard)四、swift重寫Sample

原文位址:http://blog.csdn.net/ooppookid/article/details/40356603

繼續閱讀