CAShapeLayer 實現 QQ 拖拽小紅點動畫

一言以蔽之:CAShapeLayer 可以根據貝塞爾曲線描繪出的路徑而生成對應的圖形

綜合例子

  • 效果圖

QQ粘性動畫

  • 關鍵技術點剖析

    • 分析 QQ 粘性動畫的關鍵點就是當手勢拖動時候2個圓之間那個形狀怎麼繪製

      答案:將2個圓的某一時刻之間形成的形狀用數學抽象來計算。
      軌跡分解

    • 拖動到超過某個範圍的時候怎麼執行爆炸動畫

      UIImageView 可以執行幀動畫,類似於 Flash 效果

      關鍵代碼

      - (void)pan:(UIPanGestureRecognizer *)pan{
          //當前移動的偏移量
          CGPoint transP = [pan translationInView:self];
          //改變紅點的位置
          //transform並沒有修改自身的 ce
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章