做爲一個資深(自認爲)iOS程序猿,會常常用到輪播圖,可是老是感受本身實現要比直接用別人的要方便一點,而且有一些需求須要深度定製,因而想着本身封裝一個能夠定製化的輪播圖庫JCyclePictureView。git
GitHub地址github
經過更改數據源來給用戶一個假象,圖片在無限滾動(其實一共只有3個 cell),默認顯示第一個,右滑 index + 1, 左滑 index - 1,而後修改數據源,異步回到第一個cell(注意不能有動畫)網絡
本質爲UICollectionView 的cellForItemAt 代理,需本身實現賦值邏輯異步
支持 上下左右 四種滾動方式動畫
實際爲 UICollectionView 用動畫滾動到 第0個 cell 仍是第2個 cell3d
爲實現可支持圖片的PageControl,寫了一個繼承UIPageControl 的 JPageControl代理
紅框內爲核心代碼,原理其實很簡單,在每個 顯示的點上面添加一張圖片,而後根據 currentPage 屬性修改圖片cdn
目前對齊方式支持 left、center、right,經過修改 frame 肯定位置blog
pictures 能夠以後設置 pictures支持本地、網絡圖片同時加載繼承
設置標題時 PageControl 自動右對齊
index 從0 開始
小於0.5秒不自動播放(若是不想自動播放能夠 設爲 0)
設置圖片的ContentMode
若是使用過程當中出現問題,可隨時 mr_banma@126.com 郵件聯繫。
ps:若是喜歡,記得 Star 一下,謝謝支持