2017-07-21 7 views
1

ローカルイメージの高さを取得して、React-Nativeで拡大しようとしています。次のコードを試しましたが、Failed to get size for image: ../../images/body.pngエラーが発生します。ローカルイメージのサイズを取得できません

scaleImg(h) { 
    Image.getSize('../../images/body.png', (width, height) => { 
     const scaleFactor = height/h 
     const imageWidth = width/scaleFactor 
     this.setState({imgWidth: imageWidth, imgHeight: h}) 
    }) 
} 

答えて

0

documentationあたりとして、あなたはあなたのパスにリンクするには思われるものである静止画像リソース、上Image.getSizeを使用することはできません。

静的のgetSize(URI:文字列、成功:関数、故障?:関数): はそれを表示する前 に画像の幅と高さ(ピクセル単位)を取得します。イメージが見つからないか、または がダウンロードに失敗した場合、このメソッドは失敗する可能性があります。

イメージのサイズを取得するには、最初に画像をロードまたはダウンロードする必要があります。その後、キャッシュされます。つまり、 を原則としてこの方法を使用して画像をプリロードすることができますが、 この目的のために最適化されておらず、今後は画像データを完全にロード/ダウンロードしない方法で を実装する可能性があります。適切な画像をプリロードする方法として、 がサポートされていれば、別のAPIとして提供されます。

静的イメージリソースでは機能しません。

関連する問題