0

我有一个使用 UI Kitten“顶部导航”组件设计的自定义标题组件(下面的示例链接)我想将其用作主页上的标题,而不是 Stack Navigator 提供的标题

https://akveo.github.io/react-native-ui-kitten/docs/components/top-navigation/overview#topnavigationaction

假设使用调用AppHeader的自定义“顶部导航”组件NotificationScreen

import React from 'react';
import {createStackNavigator} from '@react-navigation/stack';

import routes from './routes';
import AppHeader from '../components/AppHeader';
import NotificationScreen from '../screens/notification/NotificationScreen';
import UserProfileScreen from '../screens/userProfile/UserProfileScreen';

const {Navigator, Screen} = createStackNavigator();

const StackNavigatorPage = () => (
  <Navigator>
    <Screen name={routes.NOTIFICATION_SCREEN} component={NotificationScreen} />
    <Screen name={routes.USER_PROFILE_SCREEN} component={UserProfileScreen} />
  </Navigator>
);

export default StackNavigatorPage;

4

1 回答 1

0
import React from 'react';
import {createStackNavigator} from '@react-navigation/stack';

import routes from './routes';
import AppHeader from '../components/AppHeader';
import NotificationScreen from '../screens/notification/NotificationScreen';
import UserProfileScreen from '../screens/userProfile/UserProfileScreen';
import HomeScreen from '../screens/dashboard/HomeScreen';

const {Navigator, Screen} = createStackNavigator();

const StackNavigatorPage = () => (
  <Navigator>
    <Screen
      name={routes.HOME_SCREEN}
      component={HomeScreen}
      options={({navigation}) => {
        return {
          header: () => <AppHeader navigation={navigation} />,
        };
      }}
    />
    <Screen name={routes.NOTIFICATION_SCREEN} component={NotificationScreen} />
    <Screen name={routes.USER_PROFILE_SCREEN} component={UserProfileScreen} />
  </Navigator>
);

export default StackNavigatorPage;
于 2021-03-18T17:39:34.273 回答