鐵人30活動 – Swift x Layout x Animation x Transition
- Day 1 – Bank Balance ( Label Animation ) – 模仿「得到」储值动画
- Day 2 – StackView Animation
- Day 3 – Drawing Animation + CustomLoadingView ( UIBezierPath )
- Day 4 – Expandable Buttons – 折疊式按鈕
- Day 5 – ImageSlider – 圖片轉換動畫
- Day 6 – Parallax Scrolling – 橫向捲動視差
- Day 7 – Scratch Card – 刮刮樂的做法
- Day 8 – Flip Card – 翻轉圖片
- Day 9 – Image Filter – 濾鏡
- Day 10 – Merry Christmas – 下雪效果 ( CAEmitterLayer + CAEmitterCell)
- Day 11 – LineageM 卡包動畫 – Frame animation
- Day 12 – LineageM – Slot Machine ( 角子機動畫 )
- Day 13 – LineageM Collection – 篩選卡片
- Day 14 – CardLayout – 卡片佈局 (Custom UICollectionViewLayout)
- Day 15 – FlatCardLayout – 卡片縮放佈局
- Day 16 – HodelCardLayout – 卡片疊加佈局
- Day 17 – BankCoins – 讓錢幣飛一會
- Day 18 – 3DCardLayout – 立體卡片佈局
- Day 19 – Snapshot – 轉場動畫的暖身 (Transition)
- Day 20 – Color Diffusion Transition – 色彩擴散轉場動畫
- Day 21 – Expand Style Transition – 展開式轉場動畫
- Day 22 – Transitions – UIView Transition (視圖轉場動畫)
- Day 23 – Gradient Animation – 漸層動畫
- Day 24 – StartPageMovie – 啟動頁影片
- Day 25 – Loading Animation – 模仿知乎加載畫面
- Day 26 – LoadingAnimation – 彈跳的三個點
- Day 27 – LoadingAnimation – Triangle
- Day 28 – LoadingAnimation – Switch
- Day 29 – LoadingAnimation – Walk
- Day 30 – Finished
所有的練習都有上傳到 Github 上,可以下載 Source Code 來看看。
設計模式
設計模式的關鍵目標之一就是降低組件之間的耦合度,不過在一些場景中緊耦合是合理的。
創建型模式(Creational Pattern)
創建型模式對類的實例化過程進行了抽象,能夠模塊中對象的創建和使用進行分離。
在由誰創建(Who)、什麼時候創建(When)、創建什麼(What)都提供了儘可能大的靈活性。
- 工廠方法模式(Factory Method Pattern)
- 抽象工廠模式
- 單例模式
- 對象池模式
- 建造者模式
- 原型模式(Prototype Pattern)
結構型模式(Structural Pattern)
結構型模式描述如何將類或者對象結合在一起形成更大的結構。
行為型模式(Behavioral Pattern)
行為型模式是對不同對象之間劃分職責和算法的抽象化。
- 觀察者模式(Observer Pattern)
- 策略模式(Strategy Pattern)
- 命令模式
- 責任鏈模式(Chain of Responsibility Pattern)
- 中介者模式(Mediator Pattern)
- 備忘錄模式
- 訪問者模式(Visitor Pattern)
- 模板方法模式
Animation & Transition
- iOS座標系統以及轉換座標方法
- Swift 自訂義非交互轉場動畫(Custom Transition ViewController)
- Swift 自定義交互轉場動畫(Custom Interaction Transition ViewContoller)