2016-09-08 4 views
1

React Nativeでは、私は別のビューの中に子ビューを持っていますが、ページの真ん中にはありません。しかし、子ビューが親ビューの中に単独で存在しない場合、それはページの真ん中でうまくいきます。React Native:なぜ、justifyContentとalignItemsが子のために動作しないのですか?<View/>?

子ビューが別のビュー(parentView)内にある間にページの中央にくるようにするにはどうすればよいですか?ここで

はコードです:

render() { 

    return (
     <View id="parentView"> 
      <View 
      id="childView" 
      style={ 
       flex: 1, 
       justifyContent: 'center', 
       alignItems: 'center', 
      } 
      > 
      <Text>Center This to Middle of Page</Text> 
      </View> 
      <View 
      id="childViewTwo" 
      > 
      <Text>Don't center me</Text> 
      </View> 
     </View> 
    ); 
    } 

答えて

1

ちょうどあなたの親ビューにflex:1を追加します。私はあなたのために働い例を作った:ありがとう@antseburova https://rnplay.org/apps/zHO1YA

return (
     <View id="parentView" style={{flex: 1}}> 
      <View 
      id="childView" 
      style={{ 
       flex: 1, 
       justifyContent: 'center', 
       alignItems: 'center', 
      }} 
      > 
      <Text>Center This to Middle of Page</Text> 
      </View> 
      <View 
      id="childViewTwo" 
      > 
      <Text>Don't center me</Text> 
      </View> 
     </View> 
    ); 
+0

!魅力的な作品!簡単な質問ですが、ネストされたフレックスが必要なのはなぜですか?1? –

+1

普通のCSSと似ています。ブロックの高さを100%にしたいときは、特定の高さを持つ親ブロックも必要です。それ以外の場合、動作しません。 – Mila

+0

@antseburovaありがとう! –

関連する問題