2017-02-23 76 views
1

我在使用两个不同的导航器切换到另一个屏幕时遇到了这种情况:前导航和新导航导航 。白色闪烁一秒(或半秒)。寻找解决方案我发现其他导航器也有同样的问题。例如,来自wix HERE的导航器。从链接:当转换到新屏幕并且背景是深色时,白色闪烁?

好了,问题是,风格做出反应后,应用在导航 启动,默认情况下的backgroundColor是白色的,所以这是 闪烁效果..

有人有同样的问题?

回答

0

我有同样的问题。在我看来,有两个解决方案。

  • 第一个解决方案来自您分享的link。基本上,您可以为您的Navigator组件添加背景色。
  • 我以前应用于我的项目的第二种解决方案不是一个确切的解决方案,而是一种解决方法。我通过将SceneConfigs,从Navigator.SceneConfigs.FloatFromRight更改为Navigator.SceneConfigs.PushFromRight来改变Navigator组件如何来回切换屏幕。所以我的Navigator组件变得类似于;

     <Navigator 
          ref={(ref) => this._navigator = ref} 
          configureScene={(route) => { 
           return { 
            ...Navigator.SceneConfigs.PushFromRight, 
            gestures: {} 
           }; 
          }} 
          initialRoute={{ 
           id: (Platform.OS === "android" || Platform.OS === "ios") ? 'splashscreen' : 'login', 
           statusBarHidden: true 
          }} 
          renderScene={this.renderScene} 
         /> 
    
0

您可以设置背景颜色在您的导航是这样的:

< 
Navigator style={{flex: 1}} 
    transitionerStyle={{backgroundColor: 'black'}} ... 

希望这helps-