BaseViewController
一個通用的帶導航欄的基礎控制器+封裝庫/類
--Classes //模組。包含各個模組的Model,View,Controller,Manager
--categories //類目。包含各種類的分類 和 繼承
--Frameworks //系統框架。包含匯入的系統的框架
--Helpers //幫助類。包含網路,資料庫,歸檔,定位等操作類的封裝和實現
--Utilites //工具類,一些非物件的,而是類方法呼叫的類
--Vendors //第三方庫。部分需要修改或者不支援cocoapod的第三方的框架引入
--Config //配置。包含巨集定義檔案,全域性配置檔案,全域性常量檔案,顏色配置檔案
--Resources //資源。包含plist,image,html,bundle,Localizable.strings等
複製程式碼
Classes
1. JPTabBarController:包含MainTabBarController和自定義(JPTabBar)
1.1 JPTabBar:實現UITabBarButton的點選動畫,控制中間的不規則UITabBarButton的顯示與隱藏
2. JPNavigationView:自定義一套導航欄,取代系統導航欄,完美適配iOS11.
2.1 JPBaseViewController:基礎控制器,所有的控制器都是繼承這個.提供自定義導航欄和Item的API.
2.2 JPNavigationController:自定義導航控制器
2.3 UIBarButtonItem+JPItem:UIBarButtonItem的分類,可以方便快捷建立一個UIBarButtonItem.
2.4 JPNavigationBar:自定義的UINavigationBar,適配iOS 11的精髓所在^_^.
3. LiveMessageList:使用YYText框架組建直播聊天的訊息介面.
4. Login(MVVM):最簡單的MVVM應用demo.
5. MapController:使用協議開啟地圖的一個demo
6. BigImageListController:使用Runloop優化cell載入大圖卡頓的demo.
複製程式碼
Vendors
1. BaseMapView:載入地圖所需的view
2. JPLoopView:輪播圖.使用代理/資料來源啟用
2.1 UIImageView+JPWebImage:封裝一套模仿SDWebImage的圖片下載,並加入 UIImage+Extension 自動切圓角,減少列表滑動時離屏渲染!
3. LoadingHUD:一個有意思的loading動畫實現(對組動畫的一個demo).
4. OCJDRefreshControl:仿京東的下拉重新整理OC版本.Swift版本:https://github.com/baiyidjp/SwiftJDRefreshControl)
複製程式碼
Categories
1. NSObject+runtime:runtime的基本探究.字典轉模型
2. UIView+Corner_Radius:使用runtime實現直接在xib中給UIView新增圓角等屬性的功能.
3. UIButton+RemoveHighlightEffect:按鈕的分類,使用runtime移除按鈕的高亮狀態.
4. UIImage+Extension:UIImage的分類,可對圖片直接進行圓角剪下,增加效能.
5. UIImageView+SDWebImage:對SDImageView的再次封裝,使用 UIImage+Extension 實現切圓角.用於列表中,減少離屏渲染,增加效能.
複製程式碼