【问题标题】:Tab navigator adding header选项卡导航器添加标题
【发布时间】:2021-03-29 02:35:17
【问题描述】:

我正在使用 React 导航。我想将标题添加到我的选项卡导航器组件。我该怎么做?

标签导航功能

const TabNavigation = () => {
  return (
    <Tab.Navigator>
      <Tab.Screen name="Home" component={Welcome} />
      <Tab.Screen name="Favorites" component={Favorites} />
      <Tab.Screen name="Profile" component={Profile} />
    </Tab.Navigator>
  );
};

堆栈导航器功能

<Stack.Navigator
          initialRouteName="SignIn">
          <Stack.Screen name="SignIn" component={SignIn} />
          <Stack.Screen name="TabNavigation" component={TabNavigation}/>
 <Stack.Navigator>

【问题讨论】:

  • 我的目标不是将菜单放在首位。只需在菜单中添加标题。菜单应位于底部
  • 您可以使用tabBarPosition="bottom" 属性将其设置为底部,然后使用 Stack.Screen options 属性自定义标题
  • 你是说右下角的材料? @Andry
  • 指的是material-top-tab-navigator,这就是我个人用于底部标签的东西。还发布了一个指导答案@Gucal

标签: react-native react-navigation react-navigation-stack react-navigation-bottom-tab


【解决方案1】:

您可以在堆栈导航屏幕options 属性中动态自定义标题。例如,您可以创建像 getTitle 这样的自定义函数来根据您的路线动态确定标题。

<Stack.Screen 
    name="TabNavigation"
    component={TabNavigation}
    options={({ route }) => ({ 
        //title: getTitle(route),
        //headerStyle: styles.headerStyle
        //headerTitleStyle: styles.headerTitleStyle
    })}
/>

【讨论】:

  • 无法为 getTitle 变量设置错误。 getTitle 也不包含在文档中。
  • 这个是你可以自己实现的功能,更新描述@Gucal
  • 这不是这个问题的答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-02
  • 2019-08-14
  • 1970-01-01
  • 2020-03-19
  • 1970-01-01
  • 1970-01-01
  • 2021-04-27
相关资源
最近更新 更多