2017-10-08 118 views
2

由于我将手机更新到iOS 11,我注意到我的React Native应用程序简短地(< 0.5s)在启动屏幕和应用程序的第一个屏幕之间闪烁为白色。这是非常明显的,因为我的应用程序有黑暗的背景和黑暗的启动屏幕。应用程序在iOS 11上启动屏幕后闪烁白色?

我第一次以为我可能已经忘记了某处有白色背景的视图,但是当我创建了一个全新的应用程序并将启动屏幕设置为红色并且默认App.js(欢迎使用React本机.. )变成红色,这也是非常明显的。

要明确一点,这是发生在打包版本构建中。从远程打包程序加载时,我会接受一些调试版本的滞后,但我之前没有发布版本的问题。

其他人有这个烦人的问题?

回答

3

好的,我想我找到了问题。在AppDelegate.m中,rootView具有默认的白色背景色,当我启动应用程序时,它将从以下位置转换:启动屏幕 - > rootView - > React Native视图。

在iOS 10上,我从来没有看到过rootView flash,但是在iOS 11上,在加载RN视图之前好像有一段短暂的延迟。我不确定为什么这会发生在iOS 11而不是10,但您可以通过以下任一方式解决:

  1. 在rootView上设置背景色以匹配启动屏幕。
  2. 将启动屏幕设置为rootView的背景。这里是一个指导:https://peterminarik.tumblr.com/post/153039209421/how-to-fix-the-initial-white-flash-in-your-react
相关问题