@td-design/react-native
Version:
react-native UI组件库
116 lines (99 loc) • 2.89 kB
Markdown
---
title: Switch - 滑动开关组件
nav:
title: RN组件
path: /react-native
group:
title: 表单组件
path: /form
---
# Switch 滑动开关组件
## 效果演示
### 1. 组件的基本使用
```tsx | pure
<Switch
checked={checked}
onChange={checked => {
setChecked(checked);
}}
/>
```
<center>
<figure>
<img
alt="组件的基本使用 ios"
src="https://td-dev-public.oss-cn-hangzhou.aliyuncs.com/maoyes-app/1609318446877640981.gif"
style="width: 375px; margin-right: 10px; border: 1px solid #ddd;"
/>
</figure>
</center>
### 2. 组件禁用
```tsx | pure
<Switch
checked={checked1}
disabled
onChange={checked => {
setChecked1(checked);
}}
/>
```
<center>
<figure>
<img
alt="组件禁用 ios"
src="https://td-dev-public.oss-cn-hangzhou.aliyuncs.com/maoyes-app/1609318447298320601.gif"
style="width: 375px; margin-right: 10px; border: 1px solid #ddd;"
/>
</figure>
</center>
### 3. 自定义背景
```tsx | pure
<Switch
checked={checked2}
color="#875467"
onChange={checked => {
setChecked2(checked);
}}
/>
```
<center>
<figure>
<img
alt="自定义背景 ios"
src="https://td-dev-public.oss-cn-hangzhou.aliyuncs.com/maoyes-app/1609318447852753425.gif"
style="width: 375px; margin-right: 10px; border: 1px solid #ddd;"
/>
</figure>
</center>
### 4. 自定义 label
```tsx | pure
<Switch
checked={checked3}
showText
onText="ON"
offText="OFF"
onChange={checked => {
setChecked3(checked);
}}
/>
```
<center>
<figure>
<img
alt="自定义 label ios"
src="https://td-dev-public.oss-cn-hangzhou.aliyuncs.com/maoyes-app/1609318447361108824.gif"
style="width: 375px; margin-right: 10px; border: 1px solid #ddd;"
/>
</figure>
</center>
## API
| 属性 | 必填 | 说明 | 类型 | 默认值 |
| ---------------- | ------- | ------------------------ | ---------------------------- | ------- |
| checked | `false` | 当前是否选中 | `boolean` | `false` |
| disabled | `false` | 当前是否禁用 | `boolean` | `false` |
| onChange | `false` | 状态改变时的事件处理函数 | `(checked: boolean) => void` | |
| activeBackground | `false` | 是否选时的背景颜色 | `string` | |
| showText | `false` | 是否显示文字 | `boolean` | `false` |
| onText | `false` | 开关打开时文本 | `string` | `开` |
| offText | `false` | 开关关闭时文本 | `string` | `关` |
| width | `false` | 宽度 | `number` | `50` |