

enabledIf false the user won’t be able to interact with the control. Default value is true.
| Type | Required |
|---|---|
| bool | No |
momentaryIf true, then selecting a segment won’t persist visually. The onValueChange callback will still work as expected.
| Type | Required | Platform |
|---|---|---|
| bool | No | iOS |
onChangeCallback that is called when the user taps a segment; passes the event as an argument
| Type | Required |
|---|---|
| function | No |
onValueChangeCallback that is called when the user taps a segment; passes the segment’s value as an argument
| Type | Required |
|---|---|
| function | No |
selectedIndexThe index in props.values of the segment to be (pre)selected.
| Type | Required |
|---|---|
| number | No |
tintColorAccent color of the control.
| Type | Required |
|---|---|
| string | No |
backgroundColorBackground color color of the control. (iOS 13+ only)
| Type | Required | Supported Version |
|---|---|---|
| string | No | iOS 13+ |
valuesThe labels for the control’s segment buttons, in order.
| Type | Required |
|---|---|
| (string | number |
appearance(iOS 13+ only) Overrides the control’s appearance irrespective of the OS theme
| Type | Required | Platform |
|---|---|---|
| ‘dark’, ‘light’ | No | iOS, Android, Web |
fontStyle(iOS 13+ only) | Type | Required | Platform | | ------ | -------- | -------- | | object | No | iOS, Android, Web |
An object container
color: color of segment textfontSize: font-size of segment textfontFamily: font-family of segment textfontWeight: font-weight of segment textactiveFontStyle(iOS 13+ only) | Type | Required | Platform | | ------ | -------- | -------- | | object | No | iOS, Android, Web |
color: overrides color of selected segment textfontSize: overrides font-size of selected segment textfontFamily: overrides font-family of selected segment textfontWeight: overrides font-weight of selected segment texttabStyle(Android and Web only) Styles the clickable surface which is responsible to change tabs | Type | Required | Platform | | ------ | -------- | -------- | | object | No | Android, Web |
npm install react-native-segment-control --save --force
import React from 'react';import { View, Text, StyleSheet } from 'react-native';import SegmentControl from 'react-native-segment-control';const One = () => {return <Text style={styles.text}>This is first view</Text>;};const Two = () => {return <Text style={styles.text}>This is second view</Text>;};const Three= () => {return <Text style={styles.text}>This is 3rd view</Text>;};const Four = () => {return <Text style={styles.text}>This is 4th view</Text>;};const segments = [{title: 'One',view: One},{title: 'Two',view: Two},{title: 'Three',view: Three},{title: 'Four',view: Four}];const App = () => {return (<View style={styles.container}><SegmentControl segments={segments} /></View>);};const styles = StyleSheet.create({container: {flex: 1,backgroundColor: '#F5F7FA',justifyContent: 'center'},text: {alignSelf: 'center',margin: 50}});export default App;






Quick Links
Legal Stuff