React Native:如何隐藏除条件渲染之外的元素?

时间:2015-12-10 13:44:18

标签: react-native

如何隐藏/显示除条件渲染之外的View元素(每次渲染视图)? 我尝试将视图的高度设置为0/1,但它不适用于IOS,默认为内部子项的高度。

我需要这个来显示从上到下滑动的菜单。此菜单也是具有绝对坐标的叠加层。

<View style={styles.container}>        
    <Animated.View style={[styles.toggleMenu]} >
        <MenuScreen onPress={()=>{this.toggleMenu()}}/>
    </Animated.View>
</View>

Styles

container: {
flex: 1,  
backgroundColor: '#FFFFFF',
borderRadius: 8,
borderColor: '#000000'
},

toggleMenu:{
position: 'absolute',
left: 0,
top: 0,
width:WindowSize.width,
height: 0,
backgroundColor: '#2b3643',
opacity:0.95,
padding:0,
overflow: 'hidden'
}

由于

1 个答案:

答案 0 :(得分:3)

在元素上设置overflow: "hidden",这应该允许height属性正确地“隐藏”孩子。

请注意,使用height与其他flexbox属性可能存在一些冲突,我需要您的代码进行诊断。

有趣的事实:你可能在iOS而不是Android上遇到麻烦的原因是因为在Android上所有视图本身都隐藏了超出其界限的孩子。默认情况下,iOS上不存在此功能。