添加用户可切换的开关

Switch 组件允许用户在两种状态之间切换:选中和未选中。使用开关可以允许用户执行以下操作之一:

  • 打开或关闭设置。
  • 启用或禁用功能。
  • 选择一个选项。

该组件有两个部分:滑块和轨道。滑块是开关中可拖动的部分,轨道是背景。用户可以向左或向右拖动滑块来改变开关的状态。他们也可以轻触开关进行选中和清除。

版本兼容性

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

依赖项

实现一个开关

以下示例是 Switch 可组合项的最小实现:

结果

A basic switch that is unchecked.
图 1. 未选中的开关。
A basic Switch that is checked.
图 2. 已选中的开关。

创建自定义滑块

您可以为 thumbContent 参数传递任何可组合项来创建自定义滑块。以下是一个使用自定义图标作为滑块的开关示例:

结果

未选中时的外观与上一节中的示例相同。但是,选中时,此实现如下所示:

A switch that uses the thumbContent parameter to display a custom icon when checked.
图 3. 带自定义选中图标的开关。

使用自定义颜色

使用 colors 参数更改开关的滑块和轨道的颜色,并考虑开关是否已选中。

结果

A switch that uses the colors parameter to display a switch with custom colors for both the thumb and tack.
图 4. 带自定义颜色的开关。

要点

  • 基本参数

    • checked:开关的初始状态。
    • onCheckedChange:开关状态改变时调用的回调函数。
    • enabled:开关是否启用或禁用。
    • colors:用于开关的颜色。
  • 高级参数

    • thumbContent:用于自定义滑块选中时的外观。
    • colors:用于自定义轨道和滑块的颜色。

包含本指南的集合

本指南是这些精心策划的快速指南集合的一部分,这些集合涵盖更广泛的 Android 开发目标:

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

有问题或反馈?

前往我们的常见问题页面了解快速指南,或联系我们告知您的想法。