2017-01-30 6 views
2

イメージのサイズを設定しようとしています。イメージの幅は、カードの全幅(横のマージンを差し引いたもの)と柔軟な高さで、必要に応じて拡大/縮小できます。カードを埋めるためのイメージの幅と柔軟性のある高さを取得するにはどうすればよいですか?

どうすればいいですか?スタイルが高さを必要とするようだが、それはnullを受け入れないだろう。私はここでは高さ、幅など、さまざまなresizeModesを使用して

を組み合わせの多くを試してみました

はコンポーネントです:

enter image description here

そして、ここでは私の現在のコードです:

renderImage(image) { 
    const { width, height } = Dimensions.get('window'); 

    if (image) { 
     return (
     <View style={styles.imageContainer}> 
      <Image 
      style={{ width, resizeMode: 'contain', height: 300 }} 
      source={{ uri: image }} 
      /> 
     </View> 
    ); 
    } 
    } 

答えて

0

私はウェブからの画像で同じ問題を抱えていましたが(正確な幅が知られていない正確な幅は&でした)、react-native-web-image。現時点ではローカルイメージ用ではなく、リモート用のみです。それを試してください、もしそれが助けになるなら、私はうれしいでしょう。

+0

私は恐れることができません。ネイティブモジュールをサポートしていない指数を使用しています。 – bloppit

+0

その場合は、元の寸法を取得するためにfist 'Image.getSize'(https://facebook.github.io/react-native/docs/image.html#getsize)の2段階ロジックを使用することをお勧めします。適切に拡大縮小するために必要なすべての寸法を計算します。 – vovkasm

0

幅を画面幅に設定し、高さをundefinedに設定します。

+0

スタイルは高さが必要です。ヌルまたは省略を受け付けません。私がそうするなら、イメージはまったくレンダリングされません。 – bloppit

+0

imageContainerのスタイルは何ですか? – yedidyak

+0

これだけです: 'marginHorizo​​ntal:10、 marginBottom:5、' – bloppit

関連する問題