注意:如果有什么遗漏,请指导我。 我有一个抽屉导航器,其中包含抽屉屏幕,这些屏幕是堆栈屏幕,例如:
<PaperProvider theme={theme}>
<NavigationContainer>
<Drawer.Navigator
screenOptions={({ }) => ({
// headerShown: false,
// title:"",
headerTransparent: true,
headerTitle: "",
})}>
<Drawer.Screen name="Home" component={HomeScreen} />
<Drawer.Screen name="Groups" component={GroupsScreen} />
<Drawer.Screen name="Rides" component={RidesScreen} />
</Drawer.Navigator>
</NavigationContainer>
</PaperProvider>
问题是 Drawer Navigator 的标题汉堡显示在 HomeScreen 和它里面的每个帮助屏幕等上。我想在第一个屏幕上显示“HomeHelper”,但想隐藏在它导航到的其他屏幕上,例如“ListOfRides”屏幕。
主屏幕:
<Stack.Navigator
screenOptions={() => ({
headerTitle: "",
headerTransparent: true,
//headerShown:false
})}>
{rideBooked == true ? (
<Stack.Screen name="Screen1" component={Screen}
options={{
headerRight: () => (
<Button
onPress={() => alert('This is a button!')}
>Cancel</Button>
),
}}/>
) : (
<>
{/* headertransparent for these */}
<Stack.Screen name="HomeHelper" component={HomeHelperScreen} />
<Stack.Screen name="ListOfRides" component={ListOfRidesScreen} />
</>
)}
</Stack.Navigator>
screenOptions={{
header:()=> `ENTER YOUR VIEW HERE`,
headerShown: true,
tabBarShowLabel: true,
animation: 'fade',
}}