Android上的状态栏涵盖了我应用的标题。我所做的一切,我都无法使自己不被掩盖。
我试过了:

<StatusBar translucent={false} />


StatusBar.setTranslucent(false)

但这没有任何作用。
更多信息:
https://facebook.github.io/react-native/docs/statusbar.html

最佳答案

我在这个问题上苦苦挣扎了两个小时。因此,我认为这可能会对他人有所帮助。

@ dondragon2的答案对我来说是正确的。关键是当您在状态栏上设置颜色时,半透明关闭。我一直在努力,因为我不知道到底发生了什么,这对我的应用程序产生了一些副作用。因此,我认为此细节可能会对其他人有所帮助。

问题:

Expo默认将StatusBar半透明模式设置为ON,随后通过代码进行的任何更改均无效。



在旧版本的app.json或expo.json中,通过setting the StatusBar color关闭半透明模式。之后,您可以按RN documents中所述更改StatusBar配置。

为什么

我的想法是,世博会的目标是使开发变得容易并且跨平台。半透明模式与IOS更加相似,因此通过将其设置为默认值,使它成为零配置,甚至您也不需要设置颜色,因为我们为您设置了灰色层!因此,Expo假定设置颜色表示StatusBar不透明。您想要不透明的颜色吗?在app.json中设置颜色,并在整个应用程序中观看它而无需任何代码,并且半透明的颜色也会自动关闭。但是,我不明白为什么我们不能通过代码和使用RN API关闭透明磁带!

关于android - 为什么StatusBar.translucent在Expo App中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44749984/

10-10 02:41