2017-03-14 11 views
0

このネイティブプロジェクトの反応でこのフレックスレイアウトの問題に直面しています。React Native:子コンポーネントが "aspectRatio"を指定したときに "justifyContent"プロパティが尊重されない

私はいくつかの円を含む行は、彼らのスタイルは次のように定義されています:

rowStyle:{ 
 
     flex: 1, 
 
     flexDirection: 'row', 
 
     alignItems: 'center', 
 
     justifyContent: 'center', 
 
     borderColor:"red", 
 
     borderWidth:1, 
 
    }, 
 
    
 
circleStyle:{ 
 
     flex:1, 
 
     margin:10, 
 
    },

enter image description here

あなたが見ることができるように、そして、ここでのシナリオでありますサークルの半径は少し大きすぎると、彼らは行を出て行った。 cycleStyleへ: "1アスペクト比" と、このような結果を得る:だから私は追加今

circleStyle:{ 
 
     flex:1, 
 
     aspectRatio:1, 
 
     margin:10, 
 
    },

enter image description here

を、行が少し短すぎます。私は行の幅を制約する必要があります。

または

は "幅:Dimensions.get( '窓')幅" rowStyleへ

、彼らの両方が私を与える:私は

" 'ストレッチ' alignSelf" を追加しようとしました enter image description here

ここで、rowStyleの「justifyContent」プロパティは何とか無視されます。

問題は、行の最大幅を維持したまま、円の内側と中央を維持する方法です。ありがとう。

答えて

0

paddingVerticalにcircleStyleのaspectRatioではなくrowStyleを指定してください。 他の人が正しいアイデアを得るためには、コンポーネントシートとスタイルシートを共有してください。

+0

ご協力いただきありがとうございます。複数の行があり、各行のスタイルは「フレックス:1」なので、実際の行の高さはデバイスの画面によって異なります。修正paddingVerticalをrowStyleに設定しても効果はありません。 –

+0

コンポーネントコードについては、行は単なる汎用のViewコンポーネントであり、円はImageコンポーネントです。 –

関連する問題