2016-03-15 16 views
12

Mogę używać ViewPagerAndroid, ale gdy umieściłem go pod komponentem ScrollView nic nie zostanie wyrenderowane. Czy ktoś kiedyś to spotkał?ViewPagerAndroid nie wyświetla się pod ScrollView przy użyciu React-Native

React-Natywna wersja 0,22 Platforma: Android

To działa zgodnie z oczekiwaniami:

<ViewPagerAndroid style={{flex: 1}} initialPage={0}> 
    <View><Text>View 1</Text></View> 
    <View><Text>View 2</Text></View> 
    <View><Text>View 3</Text></View> 
</ViewPagerAndroid>; 

Poniższa renderuje nic:

<ScrollView style={{flex: 1}}> 
<ViewPagerAndroid style={{flex: 1}} initialPage={0}> 
    <View><Text>View 1</Text></View> 
    <View><Text>View 2</Text></View> 
    <View><Text>View 3</Text></View> 
</ViewPagerAndroid> 
</ScrollView> 

stworzyłem na github zbyt problem: #6469

+0

Może chcesz również, aby ScrollView był zbyt duży? Spróbuj umieścić coś innego w ScrollView (np. Text), aby zobaczyć, czy to się zgadza. –

+0

@MartinKonicek Kiedy podaję wysokość ViewPagerAndroid, zacząłem działać zgodnie z oczekiwaniami, ale problem polega na tym, że próbuję użyć flex: 1, aby scrollView pokrywał tyle miejsca, ile jest dostępne. Czy istnieje sposób, aby to osiągnąć, zaktualizowałem kod, dodając flex: 1 jako styl do ScrollView. – cubbuk

+0

Wiem, że to stare pytanie, ale możesz spróbować dodać contentContainerStyle = {{flex: 1}} do swojego ScrollView. Na przykład

Odpowiedz

3

To jest stare pytanie, ale również spotkałem się z podobnym problemem i rozwiązałem go, dodając contentContainerStyle = {{flex: 1}} do tagu scrollview. E.g.

<View style={{ flex: 1 }}> 
    <ScrollView style={{ flex: 1 }} contentContainerStyle={{ flex: 1 }}> 
     <ViewPagerAndroid style={{ flex: 1 }} initialPage={0}> 
      <View><Text>View 1</Text></View> 
      <View><Text>View 2</Text></View> 
      <View><Text>View 3</Text></View> 
     </ViewPagerAndroid> 
    </ScrollView> 
    {/*some other views*/} 
    <View style={{ height: 20, width: null, flex: 1 }}/> 
</View> 
0

Mam nadzieję, że to zadziała.

<ScrollView style={{flex: 1}}> 
     <View style={{flex: 1}} > 
     <ViewPagerAndroid style={{flex: 1}} initialPage={0}> 
      <View><Text>View 1</Text></View> 
      <View><Text>View 2</Text></View> 
      <View><Text>View 3</Text></View> 
     </ViewPagerAndroid> 
    </View> 
</ScrollView> 
Powiązane problemy