使用 React native 实现堆栈/重叠图标。
我试图在本机反应中实现这样的目标: https ://fontawesome.com/how-to-use/on-the-web/styling/stacking-icons
如何做到这一点?
使用 React native 实现堆栈/重叠图标。
我试图在本机反应中实现这样的目标: https ://fontawesome.com/how-to-use/on-the-web/styling/stacking-icons
如何做到这一点?
您可以通过这样做来实现这一点。使用宽度和高度可以帮助您将视图保持在适当位置并将所有内容对齐到中心,使其看起来像堆叠的图标。
<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>
输出:
在本例中,我将 FontAwesome 图标“square”和“home”堆叠在一起。要堆叠它们,您需要一个带有position: 'relative'
. 然后,您可以将position: 'absolute'
zIndex 应用于应该位于另一个图标之上的图标。之后,您可以使用顶部/左侧样式属性来定位图标。
代码:
<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>
演示:
能够通过反应原生元素实现这样的效果[不确定它们是否在内部使用 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,
}
零食回购: