2017-10-08 94 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
相關問題