android React Native -从带有状态栏的屏幕导航到全屏

ghg1uchk  于 2023-02-02  发布在  Android
关注(0)|答案(2)|浏览(186)

我有2个屏幕在我的应用程序,一个有状态栏和一个没有状态栏。第一个屏幕是全屏(没有状态栏),其中包含按钮导航到第二个屏幕,这是与状态栏。
隐藏状态栏的第一个屏幕代码:
返回();}
当我从第一个屏幕跳到第二个屏幕并按下第二个屏幕上的后退按钮时,第一个屏幕 Flink (UI从状态栏重新排列为全屏),因为它隐藏了第二个屏幕中没有隐藏的状态栏。所以最终,在一小部分时间里,UI看起来很糟糕。
我曾尝试在第二个屏幕上隐藏状态栏,但它会 Flink 第二个屏幕的UI。是否有解决此问题的解决方案?
任何帮助将不胜感激!

5ssjco0h

5ssjco0h1#

我猜你用来隐藏条形图的代码不是最好的方法。你试过这样的代码吗?React Native StatusBar
你在哪里可以使用React Native给你的东西来处理这个问题?更重要的是,如果你打算为Android和iOS构建最终会有不同行为的东西,你需要小心你使用的东西。
我不能评论你的问题,因为我的声誉,但你能提供更多的细节,你的代码结构请?

o75abkj4

o75abkj42#

我猜在你有状态栏和用户界面 Flink (用户界面从状态栏到全屏重新排列)的地方添加这段代码。

<StatusBar 
  barStyle={'dark-content'}
  translucent
  backgroundColor={'transparent'}
  hidden={false}
  />
 <View
 style={{
 ...styles,
 marginTop: StatusBar.currentHeight,
 }}
 >
 </View>

基本上,当您给予marginTop:StatusBar.currentHeight指定给StatusBar的下一个View时,您保留了StatusBar Place Before UI Rendering,这就是为什么UI总是在statusBar之后呈现,而不会发生重新排列或 Flink UI的原因。

相关问题