2016-08-15 7 views
10

私が取り組んでいる反応するネイティブアプリケーションのために、Viewコンポーネント内でWebViewコンポーネントを使用しようとしています。 WebViewをViewに埋め込むと、WebViewに表示しているコンテンツが表示されません。これは反応ネイティブの期待された動作ですか?ビュー内でWebViewを使用できますか(ネイティブ対応)?

+5

通常、WebViewが表示されます。 ViewとWebViewの両方でflexを1に設定するか、明示的なサイズを設定してみてください。 – Nico

+0

サンプルコードをrnplay.orgに置くことができますか? – stereodenis

+3

それは動作するはずです。すべての親ビューとWebviewをフレックスに設定してください:1 – abeikverdi

答えて

15

ウェブビューの幅と高さを指定する必要があります。 次のようにそれを実行します。

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

これは正しい答えとして受け入れられるべきです –

+1

親 'View'も' flex:1'でなければなりません:https://snack.expo.io/r1II-3jc- –

0

それはビューコンポーネント内にネストされています場合は、この

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

のようなものを使用することができ、あなたがビューとのWebViewフレックスの両方を設定する必要があります。1.

例えば。 -

<View style={{flex:1}}> 
    <WebView 
     source={{ uri: url }} 
     style={{flex:1}} 
     /> 
</View> 
関連する問題