最新消息:

使用Axure制作Slider滑块功能(一)-基础滑块

Axure中级教程 Jorkin 65浏览

简介:

滑块功能在各种应用程序和网站中广泛应用,例如音量控制器中的音量滑块、图像编辑器中的亮度滑块、视频播放器中的进度条滑块等。滑块功能简单直观,让用户可以快速调整数值或设置,提高了用户体验和交互性。今天我们拿Material Design做一个实例。

分析:

最基本的滑块通常包含以下要素:

  1. 标签(Tag):用来标注滑块的用途或数值单位等相关信息。
  2. 轨道(Track):滑块按钮沿着移动的轨道,控制滑块的位置。
  3. 高亮轨道(Highlight Track):滑块移动时,实现高亮的轨道。
  4. 滑块按钮(Thumb):用于拖动和调节滑块位置的按钮或手柄。
  5. 当前值(Current Value):滑块按钮所处的具体数值,通常会实时显示在滑块附近。
  6. 最小值(Max Value):用来表示滑块范围的最小数值。
  7. 最大值(Max Value):用来表示滑块范围的最大数值。

增强版的滑块还会包含这些功能:

  1. 数值输入框。
  2. 减少值按钮(Decrease Value):点击减少数值。
  3. 增加值按钮(Increase Value):点击增加数值。

再高级一些的滑块还会包含但不限于以下功能:

  1. 可禁用。
  2. 点击轨道调整数值。
  3. 滑块按钮鼠标悬停效果。
  4. 支持离散值。
  5. 垂直方向
  6. 范围选择。
  7. 轨道特殊背景色。
  8. 轨道特殊形状。

我们先来准备一个最基础类似ElementUI样式的滑块。

第一步,准备:

只保留最精简的几个部分:

  1. 滑块按钮(Thumb):圆形,宽度20px,高度20px,边框2px,边框颜色#409EFF,
  2. 高亮轨道(Highlight Track):矩形,宽度300px,高度6px,填充#409EFF,圆角3px。
  3. 轨道(Track):矩形,宽度300px,高度6px,填充#E4E7ED,圆角3px。

为了在滑块全部完成前方便观察交互,可以先将三个元件居中对齐并且垂直分布

第二步,调整:

将上面三个元件全部转为动态面板,并且略微调整一下样式:

  1. 滑块按钮容器(Thumb Container):不做修改。
  2. 高亮轨道容器(Highlight Track Container):宽度150px,高度6px,圆角3px。
  3. 轨道容器(Track Container):高度6px,圆角3px。

第三步,滑块交互:

非常简单,只要滑块按钮(Thumb)在拖动时,让其沿x轴进行拖动,限制左右可移动范围即可。我个人更喜欢使用Thumb的中心点,做为确定数据的依据,所在需要在合适的地点调整半个滑块的宽度。

你会发现公式函数里都有一个叫Track的局部变量,所以每个公式里都要设置对应的元件:

交互的文字表述如下:

  • 拖动时
    • 移动
      • 目标:当前
      • 移动:跟随水平拖动
      • 边界:
        • 左侧 >= [[Track.Left – This.Width/2]]
        • 右侧 <=[[Track.Right + This.Width/2]]
  • 移动时
    • 设置尺寸
      • 目标:(Highlight Track Container)
      • 尺寸:[[This.Left + This.Width/2 – Track.Left]]

有人可能会问:“直接改变高亮轨道(Highlight Track)的长度不是更简单直接么?”的确,大部分时候,我们的高亮轨道(Highlight Track)都是单一颜色,形状较为方正的,都可以直接改长度。但是如果高亮轨道(Highlight Track)是有渐变色的或者特殊形状的(比如:音量调整),那么使用更改父容器宽度就更为合适了。

第四步,轨道点击效果:

如果可以鼠标轨道进行调整就可以赋予滑块更多灵性,所以我们在轨道容器(Track Container)上添加交互:

然后在高亮轨道容器(Highlight Track Container)上也添加交互:

第五步,对齐:

其实这时已经可以预览一下看看效果了,但是还需要做后一步,将三个容器进行水平居中,为了方便以后使用,整体也可以进行组合操作。

结尾:

一个基本功能的滑块元件就完成了,下一篇会加怎么实时显示数值。

如果觉得我的教程做的不错呢,欢迎关注、收藏、转发、捐赠,谢谢。

原文链接:使用Axure制作Slider滑块功能(一)-基础滑块

转载请注明:最InのAxure » 使用Axure制作Slider滑块功能(一)-基础滑块