React本机元素列表宽度太窄

时间:2017-11-16 13:15:25

标签: reactjs react-native flexbox react-native-flexbox

我在这里使用react-native-elements列表:https://react-native-training.github.io/react-native-elements/API/lists/

当我使用flex: 1呈现它时,它非常狭窄。当我使用width: 400呈现它时,它就可以了。

以下是样式:

container: {
        flex: 1,
        justifyContent: 'flex-start',
        alignItems: 'center',
    },
    half: {
        flex: 1,
        justifyContent: 'flex-start',
        alignItems: 'center',
        borderWidth: 2,
        borderColor: '#FF0000'
    },

以下是列表代码:

     <View style={styles.container}>
        { babyList.length === 0 ? null :
            <View style={styles.half}>
                <List containerStyle={{flex: 1}}>
                    <Text style={styles.welcome}>
                        Select Baby
                    </Text>
                    {babyList.map((baby, id) => {
                        return <ListItem key={"bbbtn" + id}
                                         onPress={ (event) => selectBaby(baby) } title={"Baby: " + baby.name}/>
                    })}
                </List>
            </View>
        }
      </View>

以上代码的内容如下:

如果我设置containerStyle={{width: 400}}

,这就是它的样子

我认为flex:1会使它达到最大宽度?我需要做什么才能占用整个父容器?

1 个答案:

答案 0 :(得分:4)

这是因为您使用alignItems: 'stretch'覆盖默认alignItems: 'center'。从样式表中删除它,所有元素都将被拉伸以填充所有可用空间。

以下是您在Snack上的代码:https://snack.expo.io/r121RGj1G