Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why will React Native Picker not display on iOS?

I am trying to use the element in React Native. It works fine on Android but is not displaying on iOS.

<Picker selectedValue={'java'} >
  <Picker.Item label="Java" value="java" />
  <Picker.Item label="JavaScript" value="js" />
</Picker>
like image 230
naturallyfoster Avatar asked Jul 22 '17 18:07

naturallyfoster


People also ask

Does iOS support react-native?

React Native supports building apps for iOS, Android, and web from a single code base. It's a more affordable technology than Swift, yet it allows creating high-quality apps.


2 Answers

You need to set a height and a width to your picker element

<Picker selectedValue={'java'} style={{height: 100, width: 100}}>
  <Picker.Item label="Java" value="java" />
  <Picker.Item label="JavaScript" value="js" />
</Picker>

Btw, the picker wont appear like the keyboard could.

like image 116
Poptocrack Avatar answered Oct 18 '22 01:10

Poptocrack


To display on iOS I needed to add a <Text> element with a title for the <Picker> and place both inside a <View> element

e.g.

<View>

  <Text>Select Language</Text>

  <Picker selectedValue={'java'} >
    <Picker.Item label="Java" value="java" />
    <Picker.Item label="JavaScript" value="js" />
  </Picker>

</View>

I also noticed adding the alignItems: 'center' style to the element caused it to not display.

like image 27
naturallyfoster Avatar answered Oct 18 '22 02:10

naturallyfoster