新浪微博ios用戶端 開發流程

來源:互聯網
上載者:User

標籤:style   http   color   os   io   使用   ar   for   資料   

1. 首先 自訂AppDelegate

    (1).if:第一次登入此版本 :新特性展示—> OAuth頁面 擷取accessToken —> 主介面

並且儲存 帳號資訊 與access token ,by:單例模式。

    else: if:如果未通過OAuth授權(即單例模式類中沒有賬戶資訊)就進入OAuth頁面 —>  主介面

    else: 直接進入首頁面 並讀取單例中的資訊 擷取資料。

    (2):新特性  scrollview  使用滾動視圖以及 分頁(UIPageControl) 並添加圖片 將其分頁  並在最後一頁添加 進入 微博 分享微博的按鈕。 

2. 定義主介面結構

    1). 實現下方的選項操作條 

    定義dock類 (操作條整體是一個View)與 DockItem(每一個操作條目都是一個按鈕) DockController (UiViewController)

    DockItem:重寫內部imageView與label的frame使文字圖片保持置中 位置合適

    Dock: 設定整個View的frame 與 背景圖片,以及每一個Item的位置以及大小,隨著Item數量變化而改變, 並且監聽每個item, 設定代理方法 當點擊某個item時,會“自動”調用代理方法

   DockController:向控制器添加一個dock並設定frame, 並實現dockDelegate中當按鈕代理方法。代理方法作用:實現 點擊item 跳轉當前View

   MainController (主控制器 繼承自 Dock控制器), 通過來自父類的dock 添加item 

    2).自訂導覽列 (ios7 狀態列預設為透明 不佔高度,出現問題)

    3).定義五個TableView類,每個view都被導航控制器包裹,添加到主控制器

------ 此時大體架構以及搭建完畢,可以切換到不同頁面--------------

3.設計 更多(用戶端設定) 模組。 自訂tableview

    自訂tableView子類, 採用group模式的table   

------ 開始主要功能編寫---------------------------

4.設計home即微博部分  查看微博

    1)設定初始ui介面

    2)重寫table方法numberOfRowsInSection每組有幾行,cell數量 即擷取的微博條數

    cellForRowAtIndexPath  每行的cell 初始化--操作等 By:StatusCell

    heightForRowAtIndexPath每行cell的高度設定 通過微博具體內容 計算 by:statusCellFrame

     3)擷取微博資料 

          首先 封裝 自己的工具類 ,HttpTool  通過自己封裝好的類擷取資源 而不是直接使用AFNetworking

這樣可以降低藕合度,

          status代表的是一條微博的各種屬性, 自訂一個StatusTool 通過OAuth授權的accessToken來擷取微博資料, 在控制器中調用tool中方法 擷取微博資料 存入數組中 。 並通過自訂 的StatusCellFrame類(計算微博中個部分以及整體的frame )得到frame 存入相應數組中  用來設定cell高度

           最後通過StatusCell來展示微博。


未完待續。。。。。

新浪微博ios用戶端 開發流程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.