react-native布局中的层级问题(zIndex,elevation)

关于层级的zIndex/elevation

1、zIndex是rn在0.30开始支持的属性,是可以生效的;

2、shadow和elevation

  • shadow(阴影)开头的样式现在可以在iOS上应用,但在安卓中是不生效的.
  • 而Android上对应的属性是elevationelevation
    设置elevation属性就等价于使用原生的elevation API,因而也有同样的限制(比如最明显的就是需要Android 5.0以上版本)。此外还会影响到层叠视图在空间z轴上的顺序

结论

对于Android,两个同一层级的定位组件(position:“absolute”)
||在z轴的层叠关系|
|:---:|:---:|
|既没有ZIndex属性,又没有elevation 属性|由其摆放位置决定的,放在下面的组件会在上层|
|两个组件只有zIndex没有elevation属性时|zIndex大的在上层|
|两个组件有elevation属性|elevation大的在上层|
|两个组件既有zIndex属性elevation属性|以elevation为准|

注:对于IOS,同层级的组件,z轴的层叠关系只与摆放顺序与zIndex有关,与elevation无关

猜你喜欢

转载自www.cnblogs.com/qiqi715/p/9623338.html