iOS開發之微信山寨版

青玉伏案發表於2015-12-14

  為了犒勞自己的學習內容,就山寨個微信的檢視控制吧。拿著微信,仔細的看了一下,主要用到了TabBarController以及配置TabBarItem, NavigationController以及配置NavigationBarItem, 還用到了我們比較複雜的TableViewController來顯示我們的資料。在用到TableView中既有靜態的TableView,也有動態的TableView。動態的TableView主要用來顯示我們的資料,而靜態的TableView主要用來顯示功能模組導航時使用。在用到靜態TableView時我們還用到啦分組的和未分組的cell。

1.下面是我們主要的檢視框架,需要時我們會給對應的Controller關聯相應的程式碼,實現我們的業務邏輯。檢視框架如下:

2.Project最終執行的介面如下,下面帶箭頭的Cell點進去是一個ViewController,下面的圖片都是在網上找得素材,第一個頁面裡面是放的動態的TableView,裡面的資料是模擬網路請求過來的動態資料:

 

3.不能只貼圖片對吧,寫程式是少不了程式碼的,從第一個頁面入手,如何動態載入我們的TableView. 在進行編碼之前,首先得配置我們的cell模板,在我們動態TableView中用到幾種Cell,我們就配置幾種cell模板,在配置cell模板時要設定每個cell的identifier,便於在程式碼中根據不同的資料來選擇我們資料對應的cell。我們的TableView的控制類要繼承於我們的UITableViewController類。下面是往我們動態TableView中的cell新增資料

(1)在我們相應的TableViewController類中建立我們的測試資料,來模擬網路請求。建立一個可變陣列,往可變陣列中存入100個字典,字典裡模擬使用者資訊。

 

(2)返回我們sectionNumber,在這我們就寫一個分組吧,真正的資料是計算出來的

 

(3)返回每個分組的行數,這裡我們返回的時我們建立陣列元素的個數

 

(4)給我們的cell賦資料,通過Cell的identifier來建立cell,獲取第幾條資料是通過回撥引數indexPath的item來確定獲取第幾條資料

 

程式碼說明:

動態的TableView就是為我們的大資料準備的,預設的事螢幕上顯示多少,就會請求多少資料。隨著螢幕的下拉,會請求要顯示的資料,上出螢幕的資料會被釋放掉。若想請求更多,我們需要用程式碼實現,在以後的部落格中會介紹,在這不做過多的介紹。動態請求資料如下:

靜態的TableView實現起來比較簡單,配置起來也比較簡單,在這不做贅述。上面的東西只是防微信的檢視框架,沒有給出具體的業務邏輯。要實現具體的業務邏輯,我們需要給每個ViewController關聯實體類,然後在每個類中實現我們對應的業務邏輯,這樣分析起來,微信的程式碼量還是蠻大的。在以後的部落格中會給出具體的業務邏輯實現,本篇部落格先做一個引子吧。

打賞支援我寫出更多好文章,謝謝!

打賞作者

打賞支援我寫出更多好文章,謝謝!

iOS開發之微信山寨版

相關文章