我一直在寻找关于我的问题的答案,但是当您更换屏幕时,仍然无法理解如何消除白色闪烁。我有一个黑色主题的应用程序,所以很烦人。
我已经尝试用 View 组件包装我的应用程序,并将 backgroundColor 设置为深色,但这无济于事。
我发现了几篇文章,其中描述了一些可能的选项,例如在 RCTRootView 中进行更改等,但是我找不到在哪里进行更改...
以下是我已阅读的几个链接:
https://github.com/facebook/react-native/issues/1402 \
https://github.com/wix/react-native-navigation/issues/358
我还找到了 react-native-splash-screen ,并想今天尝试一下,但首先我决定问大家,是否存在其他方法?
EDIT
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowDisablePreview">true</item>
<!-- Customize your theme here. -->
</style>
答案 0 :(得分:0)
事实是,react-native
加载Javascript时显示白色屏幕。因此,您无法使用javascript屏幕对其进行修复,因为它尚未加载,并且由于白色屏幕是由react native视图引起的,因此您无法使用本机android代码轻松对其进行修复。
如果只想更改背景颜色,则可以编辑(或创建)res/values/colors.xml
文件以包括background
颜色:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="background">#FF0000</color>
</resources>
然后您可以在android:windowBackground
内设置styles.xml
:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowBackground">@color/background</item>
</style>
</resources>
如果您想要一个更复杂的加载屏幕,则确实需要将react-native-splash-screen
与自定义布局一起使用(否则需要在自定义模块中复制其行为)