2016-08-15 7 views
10

Próbuję użyć komponentu WebView w widoku komponentu, dla natywnej aplikacji, nad którą pracuję. Kiedy umieszczam WebView w widoku, nie widzę zawartości wyświetlanej w WebView. Czy jest to oczekiwane zachowanie z reakcją natywną?Czy mogę używać WebView w widoku (reagować natywnie)?

+5

Zwykle powinien się pojawić WebView. Spróbuj ustawić flex na 1 dla widoku i WebView lub ustawiając wyraźne rozmiary. – Nico

+0

możesz umieścić swój przykładowy kod na stronie rnplay.org? – stereodenis

+3

Powinno działać. Ustaw wszystkie widoki rodzica i swój widok WWW na flex: 1 – abeikverdi

Odpowiedz

15

Powinieneś określić szerokość i wysokość swojej przeglądarki internetowej. zrobić to następująco:

render() { 
return (
    <WebView 
    source={{uri: 'https://github.com/facebook/react-native'}} 
    style={{flex: 1}} // OR style={{height: 100, width: 100}} 
    /> 
);} 
+1

powinno to zostać zaakceptowane jako poprawna odpowiedź. –

+1

Rodzic 'Widok' powinien być również z' flex: 1': https://snack.expo.io/r1II-3jc- –

0

można użyć coś jak ten

render() { 
let {url} = this.props.webDetail; 

return (
    <View style={styles.container}> 
    {this.renderSpinner()} 
    <WebView onLoad={this.onWebLoad.bind(this)} 
     source={{ uri: url }} 
     scalesPageToFit={true} 
     /> 
    </View> 
); 
} 
3

Kiedy jest zagnieżdżona wewnątrz widoku komponentu, trzeba ustawić zarówno widok i webview Flex 1.

np . -

<View style={{flex:1}}> 
    <WebView 
     source={{ uri: url }} 
     style={{flex:1}} 
     /> 
</View>