滑塊 (Slider/滑動選擇器) 這種隨處可見的輸入控件,其實藏著很多設計細節。滑塊靠拖動游標就能實現調節數值,實時給出視覺反饋,不管是調音量、改亮度,還是設置參數范圍,都少不了它的身影。

今天就來解析一下滑塊組件的類型、設計要點,還有幾個值得參考的優秀案例。
一個標準的滑塊組件,核心包括四部分元素:
- 數值提示
- 已調節區域
- 調節游標
- 數值區間
- 未調節區域。

這幾部分各司其職,組合在一起才能讓用戶用得順手。
在Material Design的設計規范中,定義了四種常用的水平滑塊,每一種都有自己的適用場景:連續滑塊、離散滑塊、居中滑塊、范圍選擇滑塊。

1. 連續滑塊

這種滑塊最常見,游標能在軌道上自由滑動,停在任意位置都能對應一個精準數值,沒有任何限制。比如我們平時調手機音量,用的就是典型的連續滑塊。
2. 離散滑塊

它和連續滑塊最大的區別,就是拖動時游標會自動“卡點”到預設的區間刻度上。簡單說就是不能選任意值,只能在固定的數值區間里切換,適合那些需要標準化參數的場景。
3. 居中滑塊

這種滑塊的初始值默認在軌道正中間,往左拖是減小數值甚至調到負數,往右拖則是增大數值。像一些需要雙向調節的場景,比如色彩的冷暖調整、音頻的音調調節,用它就很合適。
4. 范圍選擇滑塊

有兩個游標,分別用來設定數值范圍的最小值和最大值。比如設置價格區間、篩選日期范圍時,用這種滑塊就能一次性搞定,不用反復輸入。
看似簡單的滑塊,想要做得好用,這幾點一定要考慮到:
1. 效果實時反饋

滑塊的調節是即時生效的,用戶拖動的時候,得能一眼看到數值變化帶來的直觀效果。比如調亮度時,屏幕明暗要跟著游標移動同步變化,不然用戶根本不知道自己調對了沒。
2. 軌道邏輯清晰

軌道是用來顯示數值范圍的,需要分成“已調節軌道”和“未調節軌道”兩部分。這里要注意語言閱讀習慣:咱們常用的從左到右閱讀模式下,數值得從左到右遞增;如果是面向阿拉伯語這類從右到左閱讀的用戶,數值順序就得反過來。
3. 限制刻度數量

滑塊上的刻度是用來標記數值的,游標還會自動吸附到最近的刻度值上。但設計時千萬別添加過多的刻度值,不然軌道上密密麻麻的,不僅看著亂,用戶調節時也很難精準定位到想要的數值。
4. 控制數值顯示

在設計范圍選擇滑塊時,一次最好只顯示一個關鍵數值——要么是當前選中的區間,要么是用戶正在拖動的那個游標對應的數值,顯示太多反而會讓用戶混淆。
5. 使用文本框

除了直接顯示數值標簽,還可以在滑塊外面加個獨立的文本輸入框,并且讓輸入框的數值和滑塊聯動,用戶既可以拖動調節,也能手動輸入精準的數值。

另外,用圖標或文字的形式代替刻度值,也是個提升界面顏值和易用性的好辦法。
案例參考最后給大家分享幾個有意思的滑塊設計,平時做組件的時候可以參考:
1. 經典亮度滑塊

典型的連續滑塊,軌道比較細、游標是經典的圓形,左右兩側還配了亮度圖標,不用看數值也能秒懂當前亮度檔位。
2. 尺子形式滑塊

這種滑塊不是傳統的樣式,而是做成了尺子的形狀。尺子上的刻度代替了傳統的數值指示器,0.1的增量清晰可見,數值直觀又有趣。
3. 情緒表達滑塊

雖然也是滑塊的形態,但它靠顏色來表達用戶情緒。每個滑塊單元都是離散設計,帶有刻度區間,用戶滑動選擇時,能通過色彩快速對應自己的情緒狀態。
4. 游標固定滑塊

游標固定在軌道正中間,拖動時是軌道左右移動,選中的數值顯示在右側,用戶一眼就能確認當前數值,這種交互方式很新穎。
5. 速度調節滑塊

用五個刻度來劃分速度區間,每個刻度上方都標注了具體數值。雖然刻度間的實際數值間隔不一樣,但清晰的標注讓用戶能精準把控速度檔位。最后滑塊組件雖然看著簡單,但要做到真正好用,需要將形式的新穎、交互的創新、元素的搭配等細節都考慮到,于細節處見精微。
轉載自:https://www.uisdc.com/mastering-slider-design