GitPedia

React native radio buttons group

Simple, best and easy to use radio buttons for react native apps.

From ThakurBallary·Updated May 15, 2026·View on GitHub·

Simple, best and easy to use radio buttons for react native apps. The project is written primarily in TypeScript, distributed under the MIT License license, first published in 2018. Key topics include: android, button, form, ios, radio.

Latest release: v3.0.4Accessibility
September 30, 2023View Changelog →

React Native Radio Buttons Group

Simple, best and easy to use radio buttons for react native apps.

npm LICENSE MIT

NPM

Getting Started

Just a sneak peek (lots more can be done)

DEMO

Installation

bash
npm i react-native-radio-buttons-group --save

or

bash
yarn add react-native-radio-buttons-group

Usage

JavaScript Example
App.js
jsx
import React, { useMemo, useState } from 'react'; import RadioGroup from 'react-native-radio-buttons-group'; export default function App() { const radioButtons = useMemo(() => ([ { id: '1', // acts as primary key, should be unique and non-empty string label: 'Option 1', value: 'option1' }, { id: '2', label: 'Option 2', value: 'option2' } ]), []); const [selectedId, setSelectedId] = useState(); return ( <RadioGroup radioButtons={radioButtons} onPress={setSelectedId} selectedId={selectedId} /> ); }
TypeScript Example
App.tsx
tsx
import React, { useMemo, useState } from 'react'; import RadioGroup, {RadioButtonProps} from 'react-native-radio-buttons-group'; export default function App() { const radioButtons: RadioButtonProps[] = useMemo(() => ([ { id: '1', // acts as primary key, should be unique and non-empty string label: 'Option 1', value: 'option1' }, { id: '2', label: 'Option 2', value: 'option2' } ]), []); const [selectedId, setSelectedId] = useState<string | undefined>(); return ( <RadioGroup radioButtons={radioButtons} onPress={setSelectedId} selectedId={selectedId} /> ); }

Props

RadioButton

KeyTypeRequiredDefaultValid Values
accessibilityLabelstringnoValue of labelany string
borderColorstringnocolorcss color formats
borderSizenumber2positive numbers
colorstringno#444css color formats
containerStyleobjectnoreact style
descriptionReactNode or stringnoany react node or string
descriptionStyleobjectnoreact style, applied only if description is a string
disabledbooleannofalsetrue / false
idstringyesunique string
labelReactNode or stringnoany react node or string
labelStyleobjectnoreact style, applied only if label is a string
layoutenumnorowrow / column
onPressfunctionnoany function
selectedbooleannofalsetrue / false
sizenumberno24positive numbers
testIDstringnoany string
valuestringnoany string

RadioGroup

KeyTypeRequiredDefaultValid Values
accessibilityLabelstringnoany string
containerStyleobjectnoreact style
labelStyleobjectnoreact style
layoutenumnocolumnrow / column
onPressfunctionnoany function
radioButtonsarrayyesarray of RadioButton objects
selectedIdstringnounique string
testIDstringnoany string
Horizontal (side by side)
jsx
<RadioGroup radioButtons={radioButtons} onPress={onPressRadioButton} layout='row' />

Contributions

Fork and create a pull request

License

MIT License

Stargazers over time

Stargazers over time

<a href="https://www.buymeacoffee.com/thakurballary" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from ThakurBallary/react-native-radio-buttons-group via the GitHub API.Last fetched: 6/14/2026