创建值范围滑动条

Slider 可组合项让用户可以从一定范围的值中进行选择。您可以使用滑动条让用户执行以下操作:

  • 调整使用范围值的设置,例如音量和亮度。
  • 过滤图表中的数据,例如设置价格范围。
  • 用户输入,例如在评论中设置评分。

滑动条包含轨道、滑块、值标签和刻度线

  • 轨道:轨道是表示滑动条可以取的数值范围的水平条。
  • 滑块:滑块是滑动条上的一个可拖动控制元素,允许用户在轨道定义的范围内选择特定值。
  • 刻度线:刻度线是沿滑动条轨道出现的可选视觉标记或指示器。

本主题展示了以下滑动条实现:

版本兼容性

此实现要求您的项目 minSDK 设置为 API 级别 21 或更高。

依赖项

创建基本滑动条

以下示例是一个简单的滑动条,允许用户从 0.01.0 中选择一个值。由于用户可以选择该范围内的任何值,因此该滑动条是连续的

结果

A slider component with a value selected roughly three quarters along the track.
图 1. 基本滑动条实现。

创建高级滑动条

以下代码段实现了一个包含三个步骤的滑动条,范围从 0.050.0。由于滑块会吸附到每个步骤,因此该滑动条是离散的

结果

Write your alt text here
图 2. 带有步骤和设定值范围的滑动条。

范围滑动条

您还可以使用专用的 RangeSlider 可组合项。这允许用户选择两个值。这在用户希望选择最小值和最大值等情况下非常有用。

以下示例是一个相对简单的连续范围滑动条示例:

结果

A range slider component with two values selected. A label displays the upper and lower bounds of the selection.
图 3. 范围滑动条的实现。

要点

有关完整的 API 定义,请参见 Slider 参考文档。Slider 可组合项的一些关键参数如下:

  • value:滑动条的当前值。
  • onValueChange:每次值更改时调用的 lambda 表达式。
  • enabled:一个布尔值,指示用户是否可以与滑动条交互。

在实现更复杂的滑动条时,您还可以使用以下参数。

  • colorsSliderColors 实例,允许您控制滑动条的颜色。
  • valueRange:滑动条可以取的数值范围。
  • steps:滑块可以吸附的滑动条上的刻度数。

您还可以将 thumbtrack 可组合项传递给 Slider,以更彻底地自定义组件的外观。

包含此指南的集合

此指南是这些精选的快速指南集合的一部分,这些集合涵盖了更广泛的 Android 开发目标:

了解可组合函数如何帮助您轻松创建基于 Material Design 设计系统的美观 UI 组件。

有问题或反馈吗?

请访问我们的常见问题解答页面,了解有关快速指南的信息,或联系我们并告诉我们您的想法。