3.1.0 • Published 2 months ago

react-native-radio-buttons-group v3.1.0

Weekly downloads
614
License
MIT
Repository
github
Last release
2 months ago

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

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

or

yarn add react-native-radio-buttons-group

Usage

JavaScript Example
App.js
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
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)
<RadioGroup 
    radioButtons={radioButtons} 
    onPress={onPressRadioButton} 
    layout='row'
/>

Contributions

Fork and create a pull request

License

MIT License

Stargazers over time

Stargazers over time

Sponsor