TLChat
高仿微信,iOSAppTemplate程式碼重構。此版本TLChat基於TLKit、 ZZFLEX實作.
近期計劃
近期將對專案結構進行整理,將在程式碼層面的實現整個專案模組化,主要包含:
- 聊天介面重構,邏輯獨立;
- 主要控制類邏輯整理;
- 主要清單使用ZZFLEX重構、以增加其拓展性;
- ZZFLEX對UIKit的一層封裝,主要包含一個資料驅動的列錶框架、和UIKit中常用控制項的鍊式拓展,ZZFLEX相關資料正在整理中,目前已經開源;
- iOS11適配;
- 其它功能完善點。
已實現的功能
- 訊息介面
- 訊息清單(新會話加入,DB)
- 訊息側滑刪除
- 好友搜尋(支援模糊查詢)
- 更多選單(可動態自訂items�)
- 通訊錄介面
- 好友列表(分組演算法、DB)
- 好友搜尋
- 好友資料(UI抽象範本),資料設定UI(使用設定類別UI範本)
- 新的朋友(讀取手機聯絡人資訊)
- 群聊(UI,DB)
- 標籤(UI,邏輯)
- 發現介面(使用選單類別UI模板)
- 好友圈(整體架構,部分UI)
- 掃一掃(UI,二維碼掃描,條碼掃描)
- 搖一搖UI
- 漂流瓶UI
- 購物、遊戲(封裝WebView)
- 我介面(使用選單類別UI範本)
- 個人資訊(使用設定類別UI範本)
- 表情(UI、網頁請求、下載、管理)
- 設定(抽象設定類別UI通用範本)
- 聊天介面
- 聊天輸入框
- 訊息展示視圖
- 聊天鍵盤
- 聊天記錄儲存(DB)
計劃中的功能
- 聊天介面:視訊訊息
- 聊天介面:地理位置訊息
- 好友圈:CoreText實現好友按讚、回覆功能
- 聊天模組抽離
項目主要使用的第三方函式庫
- Masonry:自動佈局框架,簡潔高效
- FMDB:sqlite資料庫管理框架
- AFNetworking:網路請求
- SDWebImage:網路圖片下載、快取
- MJExtension:JSON - Model互轉框架,高效低耦合
- MJRefresh:下拉刷新,上拉加載更多,繼承簡單
- CocoaLumberjack:日誌分級、本地化
- MWPhotoBrowser:圖片選擇器
- SVProgressHUD:進度提示框