My Native iOS将TabBarController作为根视图控制器。我在主屏幕上有一个PageViewController(这是一个容器视图),其中一个视图支持React-Native
目标:在允许用户切换标签的同时显示弹出视图
我尝试过使用模态&用于显示的Alert API。弹出窗口工作得很好但是在整个屏幕上都有遮罩。恢复交互的唯一方法是按下Alert中的 CANCEL 按钮进行解除。 Masking无法实现切换选项卡。
由于我无法删除模态或alertView的掩码,所以我试图渲染一个ListView的子视图。 这是我的render()函数
return (
<View style={{flex:1}}>
<ListView
onEndReachedThreshold={-5}
renderFooter={this._renderFooter}
onEndReached={this.onEndReached}
contentContainerStyle={styles.list}
dataSource={this.state.dataSource}
renderRow = {(rowData) => Row(rowData)}>
<View style={styles.popUpStyle}>
</View>
</ListView>
</View>
)
}
我的StyleSheets如下
list: {
justifyContent: 'center',
alignItems : 'center',
flexDirection: 'row',
flexWrap: 'wrap',
opacity : 1
},
popUpStyle : {
width: widthOfScreen - 50,
height: heightOfScreen/3,
backgroundColor:'#000000',
borderRadius: 5,
shadowColor:'#000000',
shadowRadius:5,
shadowOpacity:0.8
}
我期待一个视图出现在屏幕的中心,因为ListView基于我添加的样式,但是没有什么。 listView可以有子视图吗?更重要的是,我可以在没有面具的情况下制作弹出视图吗?
答案 0 :(得分:0)
listView可以有子视图吗?
不是我知道的。
更重要的是,我可以在没有面具的情况下制作弹出式视图吗?
当然可以。你只需要一些absolute
魔法。我做类似的节目&#34;敬酒&#34;:
风格:
component: {
position: 'absolute',
left: 0,
right: 0,
alignItems: 'center'
},
content: {
backgroundColor: red,
borderRadius: 0,
padding: 10,
height: 56,
justifyContent: 'center'
},
text: {
color: white,
textAlign: 'left',
fontSize: 18
}
组件:
<View style={styles.component} pointerEvents='none'>
<View style={styles.content}>
<Text numberOfLines={1} style={styles.text}>{this.state.text}</Text>
</View>
</View>
My&#34; toast&#34;不是互动的,但这是一个留给你的练习。