使用React native实现堆栈/重叠图标。
我正在尝试在本机反应中实现以下目标: https://fontawesome.com/how-to-use/on-the-web/styling/stacking-icons
如何实现?
答案 0 :(得分:2)
输出:
在此示例中,我堆叠了FontAwesome图标“ square”和“ home”。要堆叠它们,您需要具有position: 'relative'
的父视图。然后,您可以将position: 'absolute'
和一个zIndex应用于应该位于另一个图标上方的图标。之后,您可以使用例如top / left样式属性来放置图标。
代码:
<View style={{position: 'relative'}}>
<Icon name="square" size={24} color={"black"} />
<Icon
name="home"
size={24}
color={"white"}
style={{position: 'absolute', zIndex: 99, left: 0, top: 0}} />
</View>
演示:
答案 1 :(得分:1)
您可以通过这样做来实现。使用宽度和高度可以帮助您将视图保持在适当的位置,并使所有内容与中心对齐,使其看起来像堆叠的图标。
<View style={{
position:"relative",
justifyContent:'center',
alignItems:"center",
width:40,
height:40
}}>
<Icon name="circle" size={34} color={"black"} />
<Icon name="flag" size={20} color={"white"} style={{position: 'absolute', zIndex: 99}} />
</View>
答案 2 :(得分:-1)
能够通过反应本机元素实现这种目的[不确定它们是否在内部使用zIndex]
render() {
return (
<View style={styles.container}>
<View
style={{
position: 'relative',
height: 64,
width: 64,
justifyContent: 'center',
alignItems: 'center',
}}>
<Icon type="font-awesome" name="square" size={64} />
<Icon
type="font-awesome"
name="twitter"
color="white"
size={32}
containerStyle={{ position: 'absolute' }}
/>
</View>
</View>
);
}
容器样式为
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
paddingTop: Constants.statusBarHeight,
backgroundColor: '#ecf0f1',
padding: 8,
}
零食回购: