为了使体验更完整,让我们继续添加音量控制。由于它涉及与我们之前讨论的类似的交互,我们将为本教程的这一部分采取一种简化的方法,以保持事情的简单化。
拖动音量滑块 - 该功能的操作方式与我们为进度条设置的拖动操作类似。在起始原型中,你可以在标有“拖动音量滑块”的组中找到这个功能。
点击音量滑块 - 该操作的功能类似于我们为进度条原型设计的点击操作。在起始原型中,你可以在名为“点击音量滑块”的组中找到这个功能。
根据音量级别显示不同的音量图标 - 我们使用范围触发器来检测音量级别并相应地显示不同的图标。查看这个关于范围触发器的快速入门教程 ,以更好地理解这个功能。
在这种情况下,我们将专注于创建一个流畅的静音和取消静音体验。
让我们向“音量按钮组”添加一个“轻触触发器”。
与我们处理播放/暂停按钮的方式类似,在“音量按钮组”内,你会看到“已静音”和“未静音”两个组。它们包含代表不同状态的图标。
让我们为“已静音”组的不透明度为0时建立一个条件,表示视频现在有声音。当满足这个条件时,我们将配置“音量级别”图层的宽度为0。
我们在起始文件中可以看到视频音量与“音量级别”的宽度链接在一起,因此这将把音量调低到0。我们将创建一个额外的条件,当“已静音”组的透明度为100时,表示视频被静音。在这个条件下,我们将配置“音量级别”**图层的宽度恢复到视频被静音之前的状态。
这要求我们找到一种方法,让 ProtoPie 在将音量降至0之前记住音量级别的宽度。变量可以帮助我们。让我们创建一个名为volumeResumeLevel的变量。
在我们的第一个条件(volumeResumeLevel)下,让我们将音量级别的宽度分配给我们新创建的变量。
这一步骤完成后,当我们点击音量按钮将视频静音时,在您点击的瞬间,音量级别将被记忆到我们的 volumeResumeLevel 变量中。
在第二个条件中(Opacity of Muted = 100),我们现在可以在 Volume Level 图层上实施一个 Scale 动作。此动作将使该图层缩放到存储在volumeResumeLevel中的值,有效地将音量恢复到静音之前的原始级别。
让我们最后回顾一下静音/取消静音的体验。正如您所见,当我们取消静音视频时,音量水平将恢复到之前静音之前的原始水平。