iOS開發筆記-動畫進階開篇
前言:
我是一名剛工作半年的新手,目前在一家外包公司工作,因為公司項目比較多,短短半年已經參與了好幾個項目了,在這個這個過程中我學會了很多,進步了很多,同時也發現了我參與的所有項目都有著一個很嚴重的問題,幾乎沒有任何交互動畫,大部分操作會讓用戶體驗十分生硬。這樣的app并不完美,我開始體會到動畫的重要性,在 Teamtreehouse Motion Design 我學到了很多關于動畫的知識,今天開始分享給大家。
一、什么是動畫
1、起源
首先來說說動畫的起源,據說目前的動畫是基于1981年 迪士尼動畫 所提出的動畫的12個基本原則實現的,12個原則如下
Squash and Stretch, Anticipation, Staging, Straight Ahead & Pose-to-Pose, Follow-Through and Overlapping Action, Slow In and Slow Out, Arcs, Secondary Action, Timing, Exaggeration, Solid Drawing and Appeal.
下面為了讓大家了解這些原則,我找了一個包含顯示12個原則的視頻給大家,可以看一下,簡書不能放視頻只能放鏈接了。?!?/p>
看完視頻相信大家也對各種動畫效果有了一個初步的了解繼續往下看。
2、動畫的三大要點(這段摘至 Motion Design)
- 1、Transition(過渡)類似于頁面的切換,控件的顯示和消失的過程中要有的一個平滑過渡效果,平穩的過度,可以減輕用戶對于陌生界面的精神負擔。
- 2、Focus(焦點)將用戶的注意力集中到一個非常重要或者最近更新特定部分,特別是需要用戶立即操作的元素。
- 3、Delight(愉悅)將本來司空見慣的操作用一種意想不到的效果展示給用戶。
讓我們瀏覽一些動畫的例子,分析他們為什么存在,以及在什么情況下使用。
2、iOS動畫效果
-
1、 iOS 系統日歷效果
iOS calendar.gif
這是iOS7之后的自帶日歷app,在年切換到月的過程不不是簡單的跳轉,而是增加了過渡的特效,一個簡單的過渡可以引導用戶的視覺狀態給人一種特別明顯的層級關系,因為這不是簡單的導航控制器的切換,而是從一個大的層次通過動畫放大到一個更深層次細節次,用戶真正得到的是他們在數據中更深層次的感受。
-
2、iOS系統通話界面
call.gif
當有新的來電時,綠色的接聽按鈕旋轉和過渡為紅色,所以它可以成為接聽按鈕。類似的過渡發生在你在撥打一個電話時,點擊綠色呼叫按鈕,這里有焦點的元素。
-
3、Facebook Paper 動畫效果(個人最喜歡的一個,十分炫酷?。。?/p>
paper.gif
Facebook Paper 所有的界面切換動畫都使用了各種二維或者三維效果。這得益于Facebook 自家的Facebook Pop 動畫框架,現在已經開源了,后期我會對Pop框架的使用簡單的講解(還沒有深入研究。。)。
Facebook Pop Github 地址
https://github.com/facebook/pop
- 4、某音樂播放器界面
這是一個很有趣的動畫效果有木有?每一個控制器都采用各種不同的效果來顯示每個UI控件。每首歌在列表以動畫的方式從屏幕中顯示出來,使用一個簡單的iOS導航push/pop的方式,讓人舍不得關掉這個app。在這個動畫中的關鍵在于,屏幕沒有移動,但是所有的屏幕上的控件都在移動。創建一個這樣的效果,每一個UI控件的起始時間要稍微錯開,這種類型的動畫效果后面的一個demo中又講到。
是不是覺得狂拽酷炫??,不要被表象嚇到,接下來的幾天我會通過幾個通俗易懂的demo來教大家實現類似的動畫效果(包括iOS系統自帶的動畫框架和Facebook開源的動畫框架POP)
第一篇到此結束,第二篇文章就要進入正題啦我會著重講解動畫的各種屬性和性能方面的知識,敬請期待,更新中?。?!
iOS 動畫之美(二)
本文素材摘自 CAPPTIVATE.co,Teamtreehouse