跳至主要内容
版本:v8

ion-segment

阴影

段显示一组相关的按钮,有时称为分段控件,位于水平行中。它们可以显示在工具栏或主要内容内。

它们的功能类似于选项卡,选择一个会取消选择所有其他选项。段对于在内容内的不同视图之间切换很有用。如果单击控件应该在页面之间导航,则应使用选项卡而不是段。

基本用法

段由 段按钮 组成,每个按钮都有一个 value 属性。将 value 属性设置为与按钮的值匹配的值,以选择该按钮。段也可以被禁用以阻止用户与它们交互。

可滚动段

段默认情况下不可滚动。每个段按钮都有一个固定宽度,该宽度由段按钮的数量除以屏幕宽度确定。这确保每个段按钮都可以在屏幕上显示,而无需滚动。因此,一些带有较长标签的段按钮可能会被截断。为了避免这种情况,我们建议要么使用较短的标签,要么通过将 scrollable 属性设置为 true 切换到可滚动段。这会导致段水平滚动,但将允许每个段按钮具有可变宽度。

工具栏中的段

可滑动段

每个 段按钮 都可以与一个 段内容 元素关联,该元素在段处于活动状态时将被显示。使用这种方法,可以滑动或滚动每个段的内容,段将更新以反映当前可见的内容。

警告

如果使用可滑动段时未将初始 value 分配给 ion-segment,则段将默认为第一个段按钮的值。

段按钮在与可滑动段一起使用时无法禁用。

主题

颜色

CSS 自定义属性

可访问性

键盘交互

该组件完全支持键盘,用于在 ion-segment-button 元素之间导航和选择它们。默认情况下,键盘导航只会聚焦 ion-segment-button 元素,但是可以使用 selectOnFocus 属性来确保它们在聚焦时也会被选中。下表详细说明了每个键的作用

描述
ArrowRight聚焦下一个可聚焦元素。
ArrowLeft聚焦上一个可聚焦元素。
Home聚焦第一个可聚焦元素。
End聚焦最后一个可聚焦元素。
SpaceEnter选择当前聚焦的元素。

接口

SegmentChangeEventDetail

interface SegmentChangeEventDetail {
value?: string;
}

SegmentCustomEvent

虽然不是必需的,但此接口可以用于代替 CustomEvent 接口,以使用从该组件发出的 Ionic 事件进行更强的类型化。

interface SegmentCustomEvent extends CustomEvent {
target: HTMLIonSegmentElement;
detail: SegmentChangeEventDetail;
}

属性

color

描述要从应用程序的调色板中使用的颜色。默认选项是:"primary""secondary""tertiary""success""warning""danger""light""medium""dark"。有关颜色的更多信息,请参阅 主题
属性color
类型"danger" | "dark" | "light" | "medium" | "primary" | "secondary" | "success" | "tertiary" | "warning" | string | undefined
默认值undefined

disabled

描述如果为 true,则用户无法与段交互。
属性disabled
类型boolean
默认值false

mode

描述模式决定使用哪个平台样式。
属性mode
类型"ios" | "md"
默认值undefined

scrollable

描述如果为 true,则段按钮将溢出,用户可以滑动查看它们。此外,这将禁用在按钮之间拖动指示器的手势,以便滑动查看隐藏的按钮。
属性scrollable
类型boolean
默认值false

selectOnFocus

描述如果为 true,则使用键盘导航到 ion-segment-button 将聚焦并选择该元素。如果为 false,则键盘导航只会聚焦 ion-segment-button 元素。
属性select-on-focus
类型boolean
默认值false

swipeGesture

描述如果为 true,用户将能够在段按钮之间滑动以激活它们。
属性swipe-gesture
类型boolean
默认值true

value

描述段的值。
属性value
类型number | string | undefined
默认值undefined

事件

名称描述冒泡
ionChange当 value 属性发生变化并且任何拖动指针已从 ion-segment 释放时发出。

当以编程方式设置 value 属性时,此事件不会发出。
true

方法

此组件没有公开方法可用。

CSS 阴影部分

此组件没有 CSS 阴影部分可用。

CSS 自定义属性

名称描述
--background段按钮的背景

插槽

此组件没有插槽可用。