在React Native Modal中隐藏导航栏

时间:2019-10-19 21:58:37

标签: react-native

我想在React Native Modal中隐藏底部的导航栏。

我有一个全屏模式,在Main.java中设置,它在任何地方都可以使用,但是当我想打开Modal时,底部的导航栏才变得可见。我可以关闭此功能吗? 我需要一个莫代尔式导航栏。

getWindow().getDecorView().setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
        View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
        View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
        View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
        View.SYSTEM_UI_FLAG_FULLSCREEN 
        View.SYSTEM_UI_FLAG_IMMERSIVE);

1 个答案:

答案 0 :(得分:0)

一旦我解决了:

// the screen you try to hide the tab
hideTab(){
        let navigation = this.props.navigation.dangerouslyGetParent();
        const setParamsAction = navigation.setParams({
          showTabBar: false 
        });
        navigation.dispatch(setParamsAction);
    }

导航配置:


C2CStack.navigationOptions = ({navigation})=>{
  //console.log('===========>C2C navigation options:');
  //console.log(navigation);

  return {
    tabBarLabel: '法币',
    tabBarIcon: ({ focused }) => (
      <TabBarIcon
        focused={focused}
        name='c2c'
      />
    ),
    tabBarVisible:navigation.state.index==0&&((navigation.state.params && navigation.state.params.showTabBar) !== false)
  }
};

丑陋的事情是确定属于哪个属性和级别的参数。