Android animation 30天上手 — Day30 Android animation 總結
這是Android animation 30天上手的最後一天,前面幾篇我們都在介紹Android提供的動畫API,最後一篇我們來看一下使用動畫還需要注意哪些事。
效能
不要讓動畫影響效能。製作動畫時不能低於 60 fps,低於60fps就會讓使用者感覺到斷斷續續或停頓,讓使用者覺得體驗差。
速度
動畫的速度應適中,太快會不清楚發生什麼事,太慢則會讓使用者等待。
會影響速度的有:Duration持續時間與Easing(隨時間加速)。
Duration 持續時間
適當的轉換速度可幫助使用者追蹤UI的改變,而不會使任務複雜化
在Material design 裡有介紹各種的動畫建議的持續時間。
例如進入新頁面的動畫時間應比離開頁面的時間長。因為開新頁面需要讓使用者在新頁面能更被吸引到注意。
例如一般來說越小範圍的動畫可以越快。
參考:https://material.io/design/motion/speed.html#duration
Easing(隨時間加速)
除了持續時間,Easing也是影響動畫整體時間的。Easing是一種調整動畫變化率的方法,允許轉換元素加速和減速,而不是以恆定速率移動。例如animation.interpolator就是。
在真實世界,事物不會立即開始或停止移動。他們需要時間來加速和減速就像受摩擦等自然力的影響。(例如上一篇的FlingAnimation)
常見到的一種方式是在動畫開始很快的加速並逐漸減速來強調動畫的結束,這會讓動畫在結束時引起微妙的注意。
參考:https://material.io/design/motion/speed.html#duration
避免過度使用
我們學會了怎麼寫出動畫,但要避免過度使用。永遠想到你的目的是什麼?動畫需要成為整個體驗的一部分。在大多數情況下,一個好的動畫的使用甚至不會讓使用者注意到有動畫。
參考:
https://blog.prototypr.io/6-animation-guidelines-for-ux-design-74c90eb5e47a
https://medium.com/@stevenfabre/invisible-animation-ffa27d0b77e5
這個系列看完,相信大家也很期待在App上可以用上哪些動畫,就讓我們用動畫為使用者帶來更好的體驗吧。