如何隐藏/显示除条件渲染之外的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'
}
由于
答案 0 :(得分:3)
在元素上设置overflow: "hidden"
,这应该允许height属性正确地“隐藏”孩子。
请注意,使用height
与其他flexbox属性可能存在一些冲突,我需要您的代码进行诊断。
有趣的事实:你可能在iOS而不是Android上遇到麻烦的原因是因为在Android上所有视图本身都隐藏了超出其界限的孩子。默认情况下,iOS上不存在此功能。