React native:zIndex在Android

时间:2018-03-02 23:06:50

标签: react-native

有一个容纳组件的容器组件。该容器应该在不同的容器组件中后面文本。两个容器组件与Root元素的深度相同。解释确切的结构有点复杂。

问题的关键是zIndex在iOS上受到尊重,但在Android上却没有。您可以在此处克隆Expo项目

https://github.com/fullhdpixel/stopwatch_RN

iOS截图(正确):

iOS screenshot

Android屏幕截图(不正确,请参阅圈文字)

enter image description here

3 个答案:

答案 0 :(得分:9)

在Android zIndex上使用elevation属性进行战斗。如果你纯粹使用elevation阴影,你应该使用这样的组件来获取阴影 - https://github.com/Kishanjvaghela/react-native-cardview

或者您可以尝试设置elevationbackgroundColor: 'transparent'。我认为这会提升元素但不会给它带来影子。 (如果你尝试这种方式让我知道如果它仍然有效,我会忘记,它可能是他们修复的错误。)

编辑:

刚试过没有影子技巧的高程,它有效,这是尝试世博会的小吃 - https://snack.expo.io/@noitsnack/elevation-without-shadow-trick

答案 1 :(得分:1)

问题已经解决。解决方案很简单,只是元素的重新排列。

请参阅此提交:https://github.com/fullhdpixel/stopwatch_RN/commit/ec6cb79945fabbf0b718cbdb98f201d92f749a73

答案 2 :(得分:0)

应用高度:0 用于覆盖您想要位于顶部的组件的组件(如果不需要阴影)