Usage | React Native Dropdown Picker (2024)

Examples

Single item

In the following example you can select only one item.

import DropDownPicker from 'react-native-dropdown-picker';

function App() {
const [open, setOpen] = useState(false);
const [value, setValue] = useState(null);
const [items, setItems] = useState([
{label: 'Apple', value: 'apple'},
{label: 'Banana', value: 'banana'}
]);

return (
<DropDownPicker
open={open}
value={value}
items={items}
setOpen={setOpen}
setValue={setValue}
setItems={setItems}
/>
);
}

Multiple items

In the following example you can select multiple items.

const [value, setValue] = useState([]);

<DropDownPicker
multiple={true}
min={0}
max={5}
...
/>

Class Components

The following example shows how you can use the package in class components.

class App extends Component {
constructor(props) {
super(props);

this.state = {
open: false,
value: null,
items: [{...}, ...]
};

this.setValue = this.setValue.bind(this);
}

setOpen(open) {
this.setState({
open
});
}

setValue(callback) {
this.setState(state => ({
value: callback(state.value)
}));
}

setItems(callback) {
this.setState(state => ({
items: callback(state.items)
}));
}

render() {
const { open, value, items } = this.state;

return (
<DropDownPicker
open={open}
value={value}
items={items}
setOpen={setOpen}
setValue={setValue}
setItems={setItems}
...
/>
);
}
}

Props

items

State variable that holds the items.

items={items}
TypeRequired
ItemType[]true

value

State variable that specifies the value of the selected item. It's an array of values for multiple item pickers.

value={value}
TypeRequired
ValueType | ValueType[]true

open

State variable that specifies whether the picker is open.

open={open}
TypeRequired
booleantrue

props

Adds native props for the container TouchableOpacity.

props={{
//
}}

itemProps

Adds native props for the TouchableOpacity of each item.

itemProps={{
//
}}

containerProps

Adds native props for the container.

containerProps={{
//
}}
Type
ViewProps

labelProps

Adds native props for the Text element of the selected item.

labelProps={{
numberOfLines: 1
}}
Type
TextProps

min

Specifies the minimum number of items.

min={0}

note

This only works with multiple item pickers.

TypeDefault
numbernull

max

Specifies the maximum number of items.

max={10}

note

This only works with multiple item pickers.

TypeDefault
numbernull

disabled

Disables the picker.

disabled={true}
TypeDefault
booleanfalse

maxHeight

Max height of the drop-down box.

maxHeight={200}
TypeDefault
number200

disableBorderRadius

Disables changing the border radius when opening.

disableBorderRadius={true}
TypeDefault
booleanfalse

stickyHeader

Makes categories stick to the top of the screen until the next one pushes it off.

stickyHeader={true}
Type
boolean

autoScroll

Automatically scrolls to the first selected item.

autoScroll={true}
Type
boolean

testID

Used to locate the picker in end-to-end tests.

testID="picker-testid"
Type
string

zIndex

Specifies the stack order.

zIndex={1000}
TypeDefault
number5000

zIndexInverse

Specifies the inverse stack order.

zIndexInverse={1000}
TypeDefault
number6000

Callbacks

setOpen

State callback that is called when the user presses the picker.

setOpen={setOpen}
TypeRequired
(open: boolean) => voidtrue

setItems

State callback that is called to modify or add new items.

setItems={setItems}
Type
(callback: SetStateAction[]) => void

setValue

State callback that is called when the value changes.

setValue={setValue}
  • See: Class Components
TypeRequired
(callback: SetStateAction) => voidtrue

onChangeValue

Callback that returns the current value.

onChangeValue={(value) => {
console.log(value);
}}
Type
(value: ValueType) => void | (value: ValueType[]) => void | null

onSelectItem

Callback that returns the selected item / items.

onSelectItem={(item) => {
console.log(item);
}}
Type
(item: ItemType) => void | (items: ItemType[]) => void | null

onPress

Callback that is called as soon as the user presses the picker.

onPress={(open) => console.log('was the picker open?', open)}
Type
(open: boolean) => void

onOpen

Callback that is called when the user opens the picker.

onOpen={() => console.log('hi!')}
Type
() => void

onClose

Callback that is called when the user closes the picker.

onClose={() => console.log('bye!')}
Type
() => void

Styling

style

style={{
backgroundColor: "crimson"
}}

containerStyle

containerStyle={{

}}

disabledStyle

disabledStyle={{
opacity: 0.5
}}

textStyle

textStyle={{
fontSize: 15
}}

labelStyle

labelStyle={{
fontWeight: "bold"
}}
Usage | React Native Dropdown Picker (2024)

FAQs

How to use DropDownPicker in React Native? ›

Using React Native DropDownPicker

js and add the following code: import React from 'react'; import { View, Text } from 'react-native'; import { DropdownPicker } from 'react-native-dropdown-picker'; const DropdownPickerComponent = () => { const [items, setItems] = React.

How do I use react native searchable dropdown? ›

First let's create simple selectable Dropdown. We will also have a parent component to make it reusable. In this step, we will create a new component named Dropdown . The component will have a TextInput component to allow users to search for an option, and a FlatList component to display the options.

How do I add a drop down list in react native? ›

To create a dropdown component in React Native, you can use various libraries like react-native-picker-select , react-native-modal-dropdown , or you can build a custom dropdown using React Native components. I'll provide an example using react-native-picker-select .

How to style react-native dropdown select list? ›

Style in React Drop down list component
  1. Customizing the appearance of wrapper element. ...
  2. Customizing the focus color. ...
  3. Customizing the disabled component's text color. ...
  4. Customizing the color of the placeholder text. ...
  5. Customizing the appearance of pop-up element.

How do I use react-native document picker in react-native? ›

Installation
  1. Run npm install react-native-document-picker --save.
  2. Open your project in XCode, right click on Libraries and click Add Files to "Your Project Name" (Screenshot) then (Screenshot).
  3. Add libRNDocumentPicker. a to Build Phases -> Link Binary With Libraries (Screenshot).

What is the best dropdown library in react? ›

react-select is a popular library for creating custom and accessible dropdown select components in React applications. It provides a wide range of features and customization options for building interactive select inputs.

How do I get selected items from dropdown in react? ›

To do this, we need to use the onChange event handler. Think of onChange as a gatekeeper that notifies you whenever a change occurs in the dropdown button. In this example, handleSelectChange is a function that logs the value of the selected option to the console whenever the user makes a selection.

How do I add a search box to a dropdown list in react? ›

How to Implement a React Search Bar with Dropdown
  1. Setting Up the React Application. ...
  2. Installing React Select. ...
  3. Importing React Select Components. ...
  4. Structuring the Options Array. ...
  5. Handling the OnChange Event. ...
  6. Adding Multi-Select Functionality. ...
  7. Styling the Dropdown. ...
  8. Implementing Asynchronous Data Loading.
Feb 14, 2024

How do I use dropdown menu in react? ›

In React, creating a dropdown toggle involves creating a button and adding an onClick event listener to it. This event listener triggers a function that toggles the visibility of the dropdown menu.

How do I set picker in React Native? ›

Manual installation
  1. In XCode, in the project navigator, right click Libraries ➜ Add Files to [your project's name]
  2. Go to node_modules ➜ @react-native-picker/picker and add RNCPicker.xcodeproj.
  3. In XCode, in the project navigator, select your project. ...
  4. Run your project ( Cmd+R )<
Aug 29, 2024

What is the use of react native element dropdown? ›

What is react-native-element-dropdown in React Native?
  1. Dropdown and multiple options can be selected in one package.
  2. It is simple to use.
  3. It has the same appearance and experience across iOS and Android.
  4. Font size, color, and animation duration are customizable.
  5. It is developed with the use of typescript.
Jun 8, 2024

How do I optimize a List in react native? ›

Use light components

The heavier your components are, the slower they render. Avoid heavy images (use a cropped version or thumbnail for list items, as small as possible). Talk to your design team, use as little effects and interactions and information as possible in your list. Show them in your item's detail.

How do I create a custom dropdown in react? ›

Building a Custom Dropdown Component in React (Step by Step)✨
  1. Imports: import { useEffect, useRef, useState } from "react"; ...
  2. Interfaces: interface DropdownItem { ...
  3. Dropdown Component Creation: const Dropdown = ({ ...
  4. State Variables: ...
  5. Event Handler: ...
  6. useEffect Hook: ...
  7. Ref: ...
  8. CSS Classes:
Mar 7, 2024

How do I use react-native image picker? ›

React Native Image Picker: Allowing your App to Pick Images from the Gallery and Camera
  1. Step 1: Install react-native-image-picker. ...
  2. Step 2: Set the permissions. ...
  3. Step 3: Use React Native Image Picker. ...
  4. Step 4: Directly Launch Camera in the React Native app. ...
  5. Step 5: Directly Launch Image Library in the React Native app.

How do I use validator in react-native? ›

React native form validator
  1. Installation. Run npm install 'react-native-form-validator' to fetch the library : npm install 'react-native-form-validator' --save.
  2. Use it in your app. For class component: Extend "ValidationComponent" class on a form component : ...
  3. Complete example. Class component:
Mar 1, 2017

How do you use react-native paper badge? ›

Usage​
  1. import * as React from 'react';
  2. import { Badge } from 'react-native-paper';
  3. const MyComponent = () => (
  4. <Badge>3</Badge>
  5. );
  6. export default MyComponent;

How do I use useFormik in react-native? ›

useFormik()

Internally, Formik uses useFormik to create the <Formik> component (which renders a React Context Provider). If you are trying to access Formik state via context, use useFormikContext. Only use this hook if you are NOT using <Formik> or withFormik .

Top Articles
Did They Remove Solos Mode from Apex Legends? - Playbite
Best Peer-to-Peer Payment Apps – P2P Money Transfer
English Bulldog Puppies For Sale Under 1000 In Florida
Katie Pavlich Bikini Photos
Gamevault Agent
Pieology Nutrition Calculator Mobile
Hocus Pocus Showtimes Near Harkins Theatres Yuma Palms 14
Hendersonville (Tennessee) – Travel guide at Wikivoyage
Compare the Samsung Galaxy S24 - 256GB - Cobalt Violet vs Apple iPhone 16 Pro - 128GB - Desert Titanium | AT&T
Vardis Olive Garden (Georgioupolis, Kreta) ✈️ inkl. Flug buchen
Craigslist Dog Kennels For Sale
Things To Do In Atlanta Tomorrow Night
Non Sequitur
Crossword Nexus Solver
How To Cut Eelgrass Grounded
Pac Man Deviantart
Alexander Funeral Home Gallatin Obituaries
Energy Healing Conference Utah
Geometry Review Quiz 5 Answer Key
Hobby Stores Near Me Now
Icivics The Electoral Process Answer Key
Allybearloves
Bible Gateway passage: Revelation 3 - New Living Translation
Yisd Home Access Center
Pearson Correlation Coefficient
Home
Shadbase Get Out Of Jail
Gina Wilson Angle Addition Postulate
Celina Powell Lil Meech Video: A Controversial Encounter Shakes Social Media - Video Reddit Trend
Walmart Pharmacy Near Me Open
Marquette Gas Prices
A Christmas Horse - Alison Senxation
Ou Football Brainiacs
Access a Shared Resource | Computing for Arts + Sciences
Vera Bradley Factory Outlet Sunbury Products
Pixel Combat Unblocked
Movies - EPIC Theatres
Cvs Sport Physicals
Mercedes W204 Belt Diagram
Mia Malkova Bio, Net Worth, Age & More - Magzica
'Conan Exiles' 3.0 Guide: How To Unlock Spells And Sorcery
Teenbeautyfitness
Where Can I Cash A Huntington National Bank Check
Topos De Bolos Engraçados
Sand Castle Parents Guide
Gregory (Five Nights at Freddy's)
Grand Valley State University Library Hours
Hello – Cornerstone Chapel
Stoughton Commuter Rail Schedule
Nfsd Web Portal
Selly Medaline
Latest Posts
Article information

Author: Reed Wilderman

Last Updated:

Views: 5970

Rating: 4.1 / 5 (52 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Reed Wilderman

Birthday: 1992-06-14

Address: 998 Estell Village, Lake Oscarberg, SD 48713-6877

Phone: +21813267449721

Job: Technology Engineer

Hobby: Swimming, Do it yourself, Beekeeping, Lapidary, Cosplaying, Hiking, Graffiti

Introduction: My name is Reed Wilderman, I am a faithful, bright, lucky, adventurous, lively, rich, vast person who loves writing and wants to share my knowledge and understanding with you.