You could create your own custom component with React Native. Just Inherit it and Create Own component like as https://github.com/arshigtx/react-native-custom-switch create a component copy inner src fix issues then make it your own. Please start the project.

----- Edited ------

https://snack-web-player.s3.us-west-1.amazonaws.com/v2/46/index.html?initialUrl=exp%3A%2F%2Fexp.host%2F%40snack%2Fsdk.46.0.0-HVS884TWR6&origin=https%3A%2F%2Fsnack.expo.dev&verbose=false

import React, { useState } from "react";
import { View, Switch, StyleSheet,Text } from "react-native";

const App = () => {
  const [isEnabled, setIsEnabled] = useState(false);
  const toggleSwitch = () => setIsEnabled(previousState => !previousState);

  return (
    <View style={styles.container}>
      <View>
      {
        isEnabled ? <Text style={{position: 'absolute', color: 'white', top: 3, left: 2, zIndex: 5, fontSize: 11}} >On</Text> : <Text style={{position: 'absolute', color: 'white', top: 3, left: 20, zIndex: 5, fontSize: 11}}>Off</Text>
      }
      <Switch
        trackColor={{ false: "#767577", true: "#81b0ff" }}
        thumbColor={isEnabled ? "#f5dd4b" : "#f4f3f4"}
        ios_backgroundColor="#3e3e3e"
        onValueChange={toggleSwitch}
        value={isEnabled}
      />
      </View>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    alignItems: "center",
    justifyContent: "center",
  }
});

export default App;
Answer from Cafer Yükseloğlu on Stack Overflow
🌐
React Native
reactnative.dev › docs › switch
Switch · React Native
3 weeks ago - Invoked when the user tries to change the value of the switch. Receives the new value as an argument.
🌐
npm
npmjs.com › package › react-native-switch
react-native-switch - npm
February 21, 2022 - import { Switch } from 'react-native-switch'; export const App = () => ( <Switch value={true} onValueChange={(val) => console.log(val)} disabled={false} activeText={'On'} inActiveText={'Off'} circleSize={30} barHeight={1} circleBorderWidth={3} backgroundActive={'green'} backgroundInactive={'gray'} circleActiveColor={'#30a566'} circleInActiveColor={'#000000'} renderInsideCircle={() => <CustomComponent />} // custom component to render inside the Switch circle (Text, Image, etc.) changeValueImmediately={true} // if rendering inside circle, change state immediately or wait for animation to comple
      » npm install react-native-switch
    
Published   Feb 21, 2022
Version   1.5.1
🌐
Swmansion
docs.swmansion.com › react-native-reanimated › examples › switch
Switch | React Native Reanimated
1 week ago - const Switch = ({ value, onPress, style, duration = 400, trackColors = { on: '#82cab2', off: '#fa7f7c' }, }) => { const height = useSharedValue(0); const width = useSharedValue(0); const trackAnimatedStyle = useAnimatedStyle(() => { const color = interpolateColor( value.value, [0, 1], [trackColors.off, trackColors.on] ); const colorValue = withTiming(color, { duration }); return { backgroundColor: colorValue, borderRadius: height.value / 2, }; }); const thumbAnimatedStyle = useAnimatedStyle(() => { const moveValue = interpolate( Number(value.value), [0, 1], [0, width.value - height.value] ); c
🌐
React Native Elements
reactnativeelements.com › switch
Switch | React Native Elements
⭐ and join the Discord server! ... Switch represents user's decision of a process and indicates whether a state is on/off. Switch is a controlled component that requires an onValueChange to update the value prop.
🌐
Callstack
oss.callstack.com › switch
Switch | React Native Paper
import * as React from 'react'; import { Switch } from 'react-native-paper'; const MyComponent = () => { const [isSwitchOn, setIsSwitchOn] = React.useState(false); const onToggleSwitch = () => setIsSwitchOn(!isSwitchOn); return <Switch value={isSwitchOn} onValueChange={onToggleSwitch} />; }; export default MyComponent;
🌐
GitHub
github.com › nithinpp69 › react-native-switch-toggles
GitHub - nithinpp69/react-native-switch-toggles: react Native customizable switch component library
<> <Text style={styles.label}>Simple Switch</Text> <Switch value={isEnabled} onChange={(value) => setIsEnabled(value)} /> </> <> <Text style={styles.label}>Switch with on/off indicator</Text> <Switch value={isEnabled} onChange={(value) => setIsEnabled(value)} activeTrackColor={'#45D058'} renderOffIndicator={() => ( <Text style={{ fontSize: 8, color: 'white' }}>OFF</Text> )} renderOnIndicator={() => ( <Text style={{ fontSize: 8, color: 'white' }}>ON</Text> )} /> </> <> <Text style={styles.label}>Switch with on/off thumb indicator</Text> <Switch size={40} value={isEnabled} onChange={(value) => s
Starred by 19 users
Forked by 3 users
Languages   TypeScript 97.3% | JavaScript 2.2% | Shell 0.5% | TypeScript 97.3% | JavaScript 2.2% | Shell 0.5%
Find elsewhere
🌐
React Native Archive
archive.reactnative.dev › docs › switch
Switch · React Native Archive
Renders a boolean input · This is a controlled component that requires an onValueChange callback that updates the value prop in order for the component to reflect user actions. If the value prop is not updated, the component will continue to ...
🌐
GitHub
github.com › Splicer97 › react-native-switch
GitHub - Splicer97/react-native-switch: Custom Switch component for React Native · GitHub
Custom Switch component for React Native that use Reanimated and Gesture Handler
Author   Splicer97
🌐
npm
npmjs.com › package › toggle-switch-react-native
toggle-switch-react-native - npm
November 9, 2021 - Toggle Switch Component for react native, it works on Android, iOS and Web (react-native-web).
      » npm install toggle-switch-react-native
    
Published   Nov 09, 2021
Version   3.3.0
Author   aminebenkeroum
🌐
TutorialsPoint
tutorialspoint.com › react_native › react_native_switch.htm
React Native - Switch
import React, { Component } from 'react' import { View, Switch, StyleSheet } from 'react-native' export default SwitchExample = (props) => { return ( <View style = {styles.container}> <Switch onValueChange = {props.toggleSwitch1} value = {props.switch1Value}/> </View> ) } const styles = StyleSheet.create ({ container: { flex: 1, alignItems: 'center', marginTop: 100 } })
🌐
GeeksforGeeks
geeksforgeeks.org › react native › react-native-switch-api
React Native Switch API - GeeksforGeeks
February 16, 2026 - The React Native Switch API is a core component used to toggle between two states, typically on and off.
🌐
GitHub
github.com › shahen94 › react-native-switch
GitHub - shahen94/react-native-switch: Customisable switch component for RN
import { Switch } from 'react-native-switch'; export const App = () => ( <Switch value={true} onValueChange={(val) => console.log(val)} disabled={false} activeText={'On'} inActiveText={'Off'} circleSize={30} barHeight={1} circleBorderWidth={3} backgroundActive={'green'} backgroundInactive={'gray'} circleActiveColor={'#30a566'} circleInActiveColor={'#000000'} renderInsideCircle={() => <CustomComponent />} // custom component to render inside the Switch circle (Text, Image, etc.) changeValueImmediately={true} // if rendering inside circle, change state immediately or wait for animation to comple
Starred by 297 users
Forked by 170 users
Languages   JavaScript 100.0% | JavaScript 100.0%
🌐
MageComp
magecomp.com › home › react native › react native | switch
React Native | Switch
February 27, 2025 - The Switch component is a mainstay of the React Native library in React Native and aids in user interaction by performing a toggle action. With this versatile component, users can very smoothly switch between two very distinct states that represent ...
🌐
Peerlist
peerlist.io › blog › engineering › creating-custom-switch-component-in-react-native
Creating a Custom Toggle Switch Component in React Native
Switch component, which accepts two props: value (the current state of the switch) and onValueChange (a function to handle state changes). You initialize an animatedValue using React State to manage the animation of the switch's head.
🌐
Callstack
oss.callstack.com › react-native-paper › 4.0 › switch.html
Switch · React Native Paper
import * as React from 'react'; import { Switch } from 'react-native-paper'; const MyComponent = () => { const [isSwitchOn, setIsSwitchOn] = React.useState(false); const onToggleSwitch = () => setIsSwitchOn(!isSwitchOn); return <Switch value={isSwitchOn} onValueChange={onToggleSwitch} />; }; export default MyComponent;
🌐
DEV Community
dev.to › amitkumar13 › how-to-handle-multiple-switches-in-react-native-4el6
How to Handle Multiple Switches in React Native - DEV Community
February 14, 2025 - In this guide, we'll walk through handling multiple switches efficiently using React Native's state management.
🌐
GitHub
github.com › arshigtx › react-native-custom-switch
GitHub - arshigtx/react-native-custom-switch: A fully customizable switch component for react native. · GitHub
A lightweight, fully customizable switch component for React Native.
Starred by 33 users
Forked by 12 users
Languages   JavaScript
🌐
npm
npmjs.com › package › react-native-switch-toggle
react-native-switch-toggle - npm
This component supports horizontal switch toggle with animation with several options like start/end background colors, start/end circle colors, and duration for animation. Current package is fully redesigned in 2.0.0. We recommend you to use this package version >=2.0.0. Do you enjoy using react-native-switch-toggle?
      » npm install react-native-switch-toggle
    
Published   Jul 12, 2021
Version   2.2.1
Author   dooboolab@gmail.com