前言: 首先展示一下這個iOS小示例的彩色進度條動畫效果: 閱讀本文先說說好處:對於基礎不好的讀者,可以直接閱讀文末尾的"如何使用彩虹動畫進度條"章節,然後將我封裝好的這個功能模塊類用到你的工程項目中即可。 這個效果的示例是老外Nick Jensen在2013年寫的一個作品:使用CAGradient
前言:
首先展示一下這個iOS小示例的彩色進度條動畫效果:
閱讀本文先說說好處:對於基礎不好的讀者,可以直接閱讀文末尾的"如何使用彩虹動畫進度條"章節,然後將我封裝好的這個功能模塊類用到你的工程項目中即可。
這個效果的示例是老外Nick Jensen在2013年寫的一個作品:使用CAGradientLayer的動畫進度條View。 本人閱讀了老外的源碼之後,覺得老外這個進度條的效果很不錯,但是覺得他寫的代碼有待改進。
小貼士:讀者可以直接將老外的源碼下載下來,跑一下,然後對比本人寫的博文重構的思路過程,進行學習。另外要提出一點的是,老外這個源碼畢竟產出比較早,所以用的是MRC,代碼中多出用到了retain和release手動記憶體管理,但是本人的源碼是基於ARC的,所以就不涉及用到手動記憶體管理的代碼了。
註意:本篇博文需要有一定的iOS開發基礎,主要需要熟悉並能掌握關於CAGradientLayer(顏色漸變層)、CAShapeLayer(形狀層)、核心動畫基礎以及layer、layer.mask等知識,否則讀者看此文會有很多不理解的地方。至少可能看老外的源碼都會有很多不懂的地方。關於CAGradientLayer(顏色漸變層)、CAShapeLayer(形狀層)可以閱讀本人博客中前幾篇博文筆記。
正文大綱:
- UI效果實現的結構分析
- 如何使用彩虹進度條
- 不得不提的改進的亮點