假如你想給 iPad 設計一個鼠标的光标,你會怎麼做?
沒問題,你也許會說,不就是給 iPad 加個鼠标的光标嗎,這沒什麼難的。于是乎你提出了下圖中的設計,和桌面版的鼠标一模一樣,即精确大家又熟悉,放在 iPad 上甚至還有一種跨平台設計的溫暖。你感覺很滿意,就第一時間推給消費者了。
這事情交給 Apple 來做是這樣的。我們要給 iPad 加上鼠标的光标。于是乎為了這事情 Apple 需要十幾個人的設計團隊一兩年的時間,因為這是個需要投入才能做好的事情。 Apple 和其它公司的開始是一樣的,沒有區别。我們先把鼠标移植道 iPad 上,看看如何。
怎麼回事?雖然指針很精确,但是這裡的體驗不好,指針指向的位置頭可能出現錯誤的判斷。比如上圖中指針的位置,比如用戶想點的其實是暫停音樂,而因為指針具有像素級的精确度,很可能在圖上的位置就識别成了上一首歌,這樣的話用戶會有自己犯錯的感覺,體驗就很糟糕。
這種體驗上的割裂感是如何造成的呢?其實是因為精确度的感知不匹配。比如如上圖中的按鈕,是為了 iPad 的觸摸設計的,因此要考慮到手指的大小。這些按鈕的精确度并不高,用戶隻需要在一定範圍内點擊即可,鼠标指針則不然,它是一個精确度極高的輸入設備。二者的結合就會造成一個問題,精确度不匹配。
有什麼解決辦法呢? Apple 提出了「動态精确度」的概念,在這個思路下,iPad 上鼠标指針的精确度會随着界面元素的不同而随時調整自己。達到輸入精确度與界面預期精确度相匹配的效果。比如在上圖中,iPad 的指針被替換成了一個 19 pt 的圓來幫助用戶完成精确度的過度。仔細觀察這個上面鼠标指針的移動,你會發現鼠标在進入點選按鈕時降低了自己的精确度,轉化成按鈕本身的大小以達到和視覺精确度匹配的效果。
而按鈕間的移動因為這個感知而取消了我上面例子中用戶不知道選到哪個按鈕的模糊空間。鼠标的位置變成了有明确的兩個狀态,不是按鈕一就是按鈕二。而不會出現鼠标指針放在中間,用戶有可能點錯的模糊狀态。用動态精确度的想法解決了鼠标精确度的問題, Apple 的目光又回到了我們現在熟悉的鼠标光标上。這東西用起來像是這樣,我們很熟悉,好像沒什麼問題。
等等,沒什麼問題嗎?這個設計可能是每個學設計的人都難以容忍的。設計好的圖标被一個巨大的黑色物體遮住了一半,像用戶頭上中了一箭,實在無力吐槽。那怎麼辦,多花一些功夫把鼠标隐藏起來,隻要點選的圖标上面疊加一層半透明的圖案就可以了,圓滿。
等等,好像又有問題了。雖然鼠标光标一直在屏幕的最上面,但是放在按鈕上好像有點不對勁。仔細觀察下圖,你會發現在圖标上疊加鼠标光标的圖案,這一層疊加會導緻對圖标顔色的改變,這樣設計這些圖标的人會不開心了,因為沒按照自己預期的顔色顯示。忽然的顔色改變也會導緻界面一緻性的破壞。
怎麼解決?設計一個新的過渡吧,每一次鼠标光标接近圖标之後,鼠标的圖層自動下移,退到圖标的最下層。如上圖所示,光标進入圖标區域會自動下移,離開區域後會自動恢複到最頂層。
圖标問題解決了,再來測試看看是不是圓滿了。唉?這個文字選擇它怎麼不好用啊。下圖中是我們熟悉的文字光标選擇用起來好像也沒什麼問題。但是遷移到 iPad 上似乎總有點問題。
是的,因為用手選擇的時候指針不精确,而鼠标光标選擇的時候異常精确。統一設備上兩種輸入方式的不同會給指向精确度造成割裂感。在下圖中,你會看到我們熟悉光标的運行方式,它依靠中間點來判斷行的位置。此時我們在意的操作精确度是精确到行,而輸入精确度是精确到點。這種精确度的不同意會導緻用戶隻要稍有偏差,就選選中自己不想的那一行。
如何避免用戶選擇錯誤而帶來的挫敗感?解決方案依舊是動态精确度。比如下圖的動畫中,新的設計會明确告知用戶當前所選中的行,并靠近中間點時自動貼在上面,以徹底消除鼠标位于兩行中間的模糊狀态。此時鼠标精确度由點降低到行。
記得文章開頭舉的那個日曆的例子嗎?在用戶拖拽時,創建日曆的區間其實是固定的,也就是每 15 分鐘一個區間。而鼠标的精确度會給用戶能拖拽出更精确時間的錯覺,解決方法也是動态精确度,當鼠标光标至此時每 15 分鐘的間隔會給出一個磁吸點,來明确告知用戶這裡是有明确時間間隔的。
動态分辨率說完了。我們接下來将目光再次回到這個小圓點上。大家看到的鼠标光标其實有兩個,頂部的控制光标判斷實際光标位置,底層的顯示光标根據需求變換形狀來給用戶明确的功能感知。
控制光标的具體工作方式如下圖。控制光标負責檢查實際位置,而顯示光标負責用戶感知。因為 iPad 的觸摸版相對 Mac 要小一些,有時用戶可能會遇到點按的瞬間手抖的情況,本來想點某一個按鈕卻因為控制光标靠近按鈕邊緣而滑出去,導緻點擊失敗。為了避免這裡的挫敗感,用戶每次手指離開觸摸版時,控制光标會如圖所示自動居中,确保用戶下次點擊光标停留在預期的按鈕上。
解決了顯示的問題。我們來看看 Apple 如何做好滑動位置的判斷的。比如下圖中,你想用觸控闆滑動光标來選擇左側的設置圖标。這時候你做的可能是在觸摸版上向左滑動,但是結果有幾種可能,要麼你一下滑過了光标跑到尺子那裡去了,要麼是一次滑動差那麼一點點距離光标停在設置旁邊了。
有沒有可能做的更好? Apple 設計了一套磁吸位置預判來解決這個問題。還是那張圖,在 Apple 的眼中它是這樣的。當鼠标離開觸摸版的一瞬間,光标會根據滑動距離和速度來判斷預期的最終位置。下圖中的最終與其位置便是這些同心圓的圓心,此時根據最終位置生成周邊一系列磁吸點。判斷磁吸點下方是否有可控制的按鈕。下圖中設置圖标是最近的磁吸控制按鈕。因此用戶光标會自動吸在上面。對于用戶來說,這種感知就覺得自己很厲害,每次都能選到想要的東西。
說了許多光标的邏輯,卻還沒說它的設計。在開始之前,你可以看下圖中的動畫感受一下。是的,我們所看到的平面按鈕實際上設計是具備深度的。比如點按時,你會發現你的點按動作是真實和按按鈕一樣,又一個下壓的動作。還記得我們之前讨論的控制點嗎,為了讓用戶在光标變成按鈕時仍對控制點有位置上的感知,控制點此時變成了一個點光源。
明确告知用戶什麼被選中是一個光标的責任。比如下圖中所有選中的圖标都會有一種懸浮的特效,并且會有我之前提到的控制點光源來告知其控制點。
實現這個特效實際上将原有的一層圖标分成了四層。最上面的光源層告知控制位置,第二層是實際的圖标,第三層是動态位置層,第四層是根據光源變化的陰影層。
這樣的設計邏輯好像沒什麼問題。但是在某些情況下,這些設計邏輯可能會造成不想要的視覺反饋。比如下圖中一組按鈕的高亮選擇,若繼續沿用圖标的那個半透明圖層,則實際顯示出來顔色過深降低了區分度。對于這些按鈕的顯示,則采用懸浮的設計并取消光源,比如下圖中日曆的選擇按鈕。與此類似的小細節修改點還有很多,不再贅述。
那麼解決了光标的邏輯和顯示問題,我們來看 Apple 如何進一步推動光标設計,來使其明确的傳達功能性。首先光标作為一個指向性的物件,必須保持随時可見,因此光标的顯示顔色是和當下背景有關的,仔細觀察你會發現光标會依舊底下内容的顔色而更改自身的顔色。其次對于常見的拉選框,光标還會像下圖一樣變成指向性圖标。
但在 iPad 中,光标的功能指向性不止于此。它可以根據需求自動調整顔色,變成功能性的圖标。而在變更過程中,還需要考慮光标的中心位置是否明确,填充類型轉換為邊緣線類型時視覺重量的提升等等。
更絕妙的是:我說了一篇文章,也許你壓根沒在 iPad 上見過這個光标,因為 iPad 有觸摸版的人是少數。
大家現在熱烈讨論的 ARM 版 Mac,其實 Apple 已經做了準備了很多年了。比如 4 年前宣布取消 32 位應用支持,5 年前開始推廣 Metal 圖形層來統一框架,這些都是在為 Mac for ARM 做準備。隻是太多人分析事情隻看當下不看大局,選擇蒙着眼睛,或者是真的看不到。今年大家看到的性能表現優異,不過是過去數年努力的成果展示而已。
其實 Apple 不是什麼魔法師,隻是在設計時認真的去為用戶做考量。願意在這些别人不在意的細節上投資,一點點積累之後,就有了自己獨特的用戶體驗。用戶雖然對每年的創新所帶來的小毛病憋着一肚子氣,但心底裡還是希望有人能付出努力,把這些别人不在意的細節一點點做好,于是盡量寬容,大概就是這種默契吧。
本文所有素材來源: Apple WWDC: Design for the iPadOS pointer
過去幾年裡, Apple 放出的設計向視頻大概有近百個。本文的引用源也是其中之一,本文并非對該設計視頻的翻譯,而是我看過視頻,在 WWDC 與 Apple 工程師交流後,把一些想法用文字碼在這裡。其實 Apple 每年放出這些視頻我想初衷也是和大家一緻的,這些心得值得被更多人所知。本文的初衷也是如此。
有些人可能不熟悉觀看 Apple 官方 WWDC 視頻的方式,其實在 iOS 或者 Mac 應用商店,下載開發者應用,就可以看所有視頻了。沒有 Apple 設備也沒關系, Apple 的開發者官網也有,鍊接如下:Topics - Videos - Apple DeveloperTopics - Videos - Apple Developer
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!