iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 30
3
Software Development

Android animation 30天上手系列 第 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上可以用上哪些動畫,就讓我們用動畫為使用者帶來更好的體驗吧。

鐵人賽心得:

從鐵人賽開賽前一個月開始準備,大概有60天的時間。這60天說真的很累,下班回家就是準備鐵人賽文章,晚睡早起,也幸好有另一半的包容。很累但也很值得。
一直想把Android 動畫學好,剛好利用這個機會,強迫自已在30天弄懂。
個人覺得參加鐵人賽,相較於挑一個已經很熟的項目來寫,不如找一個不熟的項目,強迫自己30天內弄懂,用30天讓自己快速成長。
也期許自已繼續保持著熱血,持續挑戰。

Android 線上課程

Android UI 進階實戰 => 單堂早鳥優惠立即拿
Android 動畫入門到進階 => 單堂早鳥優惠立即拿
最優惠心動組合=> 使用者體驗全面升級組合包


上一篇
Day29 基於物理的動畫:Spring animation、FlingAnimation
系列文
Android animation 30天上手30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
SunAllen
iT邦研究生 1 級 ‧ 2018-11-13 00:23:48

恭喜大大完賽!/images/emoticon/emoticon12.gif

0
iopkl27
iT邦新手 5 級 ‧ 2018-11-13 11:21:19

恭喜完賽
/images/emoticon/emoticon32.gif

我要留言

立即登入留言