React Navigation:如何检测屏幕是否在TabNavigator或DrawerNavigator中?

问题描述 投票:1回答:1

我正在创建一个演示应用程序,并要求ios应用程序必须使用选项卡,并且在Android上必须使用抽屉。

没问题,我创建了配置和现场应用,并在每个屏幕上添加了抽屉相关和与标签相关的配置。

如果屏幕在tabnavigator中,我需要隐藏打开抽屉的导航栏图标,并且仅在抽屉导航器内显示

有办法吗?

android ios react-native react-navigation
1个回答
0
投票

我找到了这个解决方案

如果找到更好的方法,请发布您的答案

export default class Contacts extends React.Component {

  static navigationOptions = ({ navigation }) => {

    return {
      title: 'Contacts',
      headerLeft: navigation.actions.toggleDrawer
        ? (<MaterialIcons name="menu" size={24}
          style={{ color: colors.grey, marginLeft: 10 }}
          onPress={() => navigation.dispatch(DrawerActions.toggleDrawer())}
        />)
        : null,
    };
  }

  ... rest of component code ..
© www.soinside.com 2019 - 2024. All rights reserved.