Dropdown no React Native: com e sem biblioteca

Guia de dropdown no React Native

Dropdown no React Native: crie um com Modal + FlatList | We.Inc

Crie um dropdown no React Native sem biblioteca usando Modal e FlatList, ou use o Picker da comunidade. Código para copiar, uma prévia web ao vivo e uma tabela de props.

O React Native não traz nenhum dropdown ou select na sua lista de componentes principais. Você monta um a partir de um gatilho Pressable, um Modal e uma FlatList de opções, ou instala o pacote da comunidade @react-native-picker/picker, que encapsula o picker nativo no Android e no iOS. Monte o seu quando precisar de busca, linhas personalizadas ou o mesmo visual em todas as plataformas.

Três formas de mostrar uma lista de opções

A prévia abaixo roda a mesma lógica do código React Native mais adiante, desenhada com elementos web para você testar aqui: abra a lista, filtre, escolha uma linha e feche com Escape. Depois copie o componente e troque as tags web por View, Text, Pressable, Modal e FlatList.

Perguntas frequentes

O React Native tem um dropdown nativo?

Não. A página de componentes principais lista Button e Switch entre os controles de interface, e nada para selects. Para um select nativo pronto, instale o pacote da comunidade @react-native-picker/picker.

Como faço o Picker parecer um dropdown no Android?

Defina mode="dropdown" no Picker. Essa prop é só do Android; lá o padrão é "dialog", que abre uma lista em modal. No iOS o componente mostra a roda nativa.

Por que tocar em uma opção só fecha o teclado?

Uma lista com rolagem usa "never" como padrão em keyboardShouldPersistTaps, então o primeiro toque fora do campo em foco fecha o teclado e a linha nunca o recebe. Defina a prop como "handled" na FlatList.

Posso adicionar busca a um dropdown no React Native?

Sim, com a versão personalizada. Guarde uma string de busca no state, coloque um TextInput no topo do Modal e passe o array filtrado para a prop data da FlatList.

Quando montar o seu

Acessibilidade em um select personalizado

Props que importam em um dropdown

Props principais usadas pelo dropdown personalizado

Código de dropdown para copiar

Dropdown com Pressable, Modal e FlatList

Sem dependências. O componente pai é dono do valor; o componente só informa a escolha por onChange.

O Picker da comunidade

Instale com npm install @react-native-picker/picker. onValueChange recebe o valor do item e a posição dele.

Prévia do dropdown

Versão web do componente React Native: a mesma lógica de abrir, filtrar e escolher, desenhada com HTML para rodar aqui.

Cidade

Escolha...

Filtrar cidades

Nenhuma cidade corresponde a esse filtro.

Fechar lista

Valor selecionado: {v}

Nada selecionado ainda.

Comece grátis · Sem cartão de crédito

Relacionados: Guias

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site