2017-01-18 8 views
1

私は、私が背景イメージとして使用しているローカルイメージを持っています。コンテンツの残りの部分を1秒後に読み込みます。Reactネイティブローカルイメージが内容の後に1秒間読み込まれます

<Image source={require('./assets/climbing_mountain.jpeg')} style={styles.imageContainer}> 

imageContainer: { 
    flex: 1, 
    width: null, 
    height: null, 
} 

画像を読み込んだ後にコンテンツを読み込む方法はありますか?私はonLoadonLoadEnd小道具を使ってみましたが、画像が読み込まれる前に起動しました。

答えて

1

はい...それは単純ではない、実際に、あなたがイメージ・プリフェッチを使用する必要があります...このリンクをチェックしている:React Image prefetch

それとも実際にあなたがこの試すことができます:

<Image 
    onLoadEnd={()=>this.setState({loadEnd:true})} 
    source={require('./assets/climbing_mountain.jpeg')} 
    style={styles.imageContainer}> 

とでは、あなたが本当にお勧めしないような何かをすることができますレンダリングメソッド:

render(){ 
    if(!this.state.loadEnd) { 
    return(
     <Image 
     key='image_key' 
     onLoadEnd={()=>this.setState({loadEnd:true})} 
     source={require('./assets/climbing_mountain.jpeg')} 
     style={styles.imageContainer}> 
    ) 
    }else { 
    return (
     <View> 
     .... 
     <Image 
     key='image_key' 
     onLoadEnd={()=>this.setState({loadEnd:true})} 
     source={require('./assets/climbing_mountain.jpeg')} 
     style={styles.imageContainer}> 
     </view> 
     .... 
    ) 
    } 
} 
+0

ありがとう、@チャレンジャー!私はあなたの2番目の方法を実装しましたが、それは理想的ではないと言ったように、私は他の方法でショットを与えるでしょう。 –

関連する問題