2016-07-01 17 views
6

Tutaj staram prosty kod, ale widok przewijania nie działa, jeśli są przechowywane wewnątrz innego view.Code jest tak:Scroll Widok wewnątrz widoku nie działa reagować rodzimy

return(
    <View> 
    <Toolbar title={this.props.title}> 
    </Toolbar> 

    <ScrollView> 

     <HomeScreenTop /> 
     <HomeScreenBottom navigator={navigator}/> 

     </ScrollView> 

    </View> 
); 

Ale jeśli widok przewijania trzymane jako rodzica zobaczyć to działa perfectly.Code jest jak poniżej:

return(
    <ScrollView> 
    <Toolbar title={this.props.title}> 
    </Toolbar> 



     <HomeScreenTop /> 
     <HomeScreenBottom navigator={navigator}/> 



    </ScrollView> 
); 

teraz problem jest nie chcę mój pasek narzędzi, aby przewijać w górę iw dół, po prostu chcę zawartość poniżej paska narzędzi do move.How mogę osiągnąć ?

Następne pytanie: Czy widok przewijania musi być widokiem nadrzędnym, aby powrócić do pracy?

Każda pomoc będzie pomocna. Dzięki.

Odpowiedz

8

należy owinąć pasek narzędzi w widoku tak:

<View><Toolbar/></View> 

Wrap tych części, które chcesz przewijać wewnątrz Scrollview jak:

<ScrollView>your expected components...</ScrollView> 

I zapewniają Flex wykorzenić Zobacz jako:

<View style={{flex:1}}> 

Wreszcie kod będzie działał zgodnie z oczekiwaniami.

3

Top <View> koniecznością ma styl flex:1, a także <ScrollView> ma zbyt

0

Użyj flexGrow nieruchomość w stylu, flex zrobił pracował dla mnie.

<ScrollView contentContainerStyle={{ flexGrow: 1 }}> 
    ... 
</ScrollView>