SelectNative
A select field that opens the platform's native picker (via
react-native-picker-select) instead of a custom-rendered dropdown. The visible
Field is read-only and only displays the current selection — all interaction
happens through the native picker overlay.
React Native
import { SelectNative } from '@hoverinc/design-system-react-native';
<SelectNative
label="State"
data={[
{ label: 'California', value: 'CA' },
{ label: 'New York', value: 'NY' },
]}
onValueChange={setState}
value={state}
/>;Common Mistakes
- Prefer Select over
SelectNativefor new work.SelectNativepredatesSelectand is kept mainly for backward compatibility — native picker instability (crashes and a dropdown-not-opening issue after RN upgrades) is exactly what drove the team to build a custom-styledSelectas the default going forward. - The prop is
data(an array of{ label, value }), notoptionsoritems— a common assumption coming from other picker libraries. - iOS and Android render genuinely different pickers here: iOS shows the native
wheel/action-sheet picker, while Android renders a custom-styled dropdown
rather than the OS's native spinner (
useNativeAndroidPickerStyleis explicitly set tofalse). Don't assume identical UX or screenshots across platforms. - If selected values come back as literal
?placeholders, check the shape ofdata— this has been a real reported issue traced to how the option list was structured, not a bug in the component itself.