[英]How can Top Navigation component from UI Kitten can be used in React Native Stack Navigator as a custom header
I Have a custom header component designed using UI Kitten "Top Navigation" component (link below to examples) i would like to use that as a header on main page instead of the header Stack Navigator provides我有一个自定义 header 组件使用 UI Kitten“顶部导航”组件设计(链接下面的示例)我想将其用作主页上的 header 而不是 Z099FB995346F31C749F6E40DB0F9
https://akveo.github.io/react-native-ui-kitten/docs/components/top-navigation/overview#topnavigationaction https://akveo.github.io/react-native-ui-kitten/docs/components/top-navigation/overview#topnavigationaction
lets say use custom "Top Navigation" component called AppHeader
in NotificationScreen
假设在
NotificationScreen
中使用名为AppHeader
的自定义“顶部导航”组件
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;
i figured it out and decided to leave the question and answer here in case someone might find this useful.我想通了,决定把问题和答案留在这里,以防有人发现这很有用。 Please let me know if this helped you as well
如果这对您也有帮助,请告诉我
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;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.