リアクションナイーブは、実行時に画像ディメンションの状態を示すように開発者に提案します。私はこれが良い習慣であることを知っています。私の質問は... <Image>
の幅を未知の幅の<View>
と同じ幅に変更したいのですか?未知のサイズのビューでのリアクションネイティブ画像サイジング
たとえば、には<Image>
があり、rowDirection: 'row', flex: 0.8
にあります。別のデバイスでは、私は異なった画面幅を持っています。デバイスの実際の幅の80%をどのように知ることができますか?
P.S.私はすべてresizeMode
を試しましたが、運はありません。
誰でもおかげです!
UPDATE 1
私は
<View style={{ flexDirection: 'row', flex: 1, backgroundColor: '#CCF' }}>
<Image
source={require('../resources/images/side-menu-header.png')}
style={{ width: null, height: null, flex: 0.8 }} />
<View style={{ flex: 0.2 }} />
</View>
しかし、はい、この画像は、現在の幅に0.8に設定されているが、一部の領域がトリミングされたこのスニペットを試してみました。これは私が得たいものではありません。したがって、私は以下のようにcontain
にそのresizeMode
を設定します。これは私があまりにも期待したものではありません
<View style={{ flexDirection: 'row', flex: 1, backgroundColor: '#CCF' }}>
<Image
resizeMode='contain'
source={require('../resources/images/side-menu-header.png')}
style={{ width: null, height: null, flex: 0.8 }} />
<View style={{ flex: 0.2 }} />
</View>
をスニペット!ご覧のように、画像の幅は0.8になり、画像全体が表示されますが、上下のスペースは元の寸法で占められています。 (元の画像のサイズが大きい)
私はいくつかの言葉でこの質問を単純化することができます:私はどのように私のアプリでフル幅の画像を表示するのですか?すべてのデバイスの幅が1080ピクセルではないため、幅を1080に設定することはできません。
ありがとうございます!
何が欲しいですか?画像を伸ばしたいですか?もしそうなら、 'resizeMode'を' stretch 'に変更しました。伸ばしたくないが、画像がアスペクト比を維持しながら背景を「覆う」ようにするには、 'resizeMode'を' 'cover''に変更してください。 – Mayazcherquoi
@Mayazcherquoi全体の画像をアスペクト比を失うことなく表示したい。 – mannok
それから、 'resizeMode = 'contain''を使う必要があります。画面/コンテナが画像のアスペクト比に合わない場合、パディングを追加しないと何もできません。 – Mayazcherquoi