在IOS的Stack Navigator的所有屏幕中可见的一个屏幕的标题

时间:2020-06-26 11:26:01

标签: ios react-native react-navigation-v5

我正在使用React导航版本5。 根据屏幕的react navigation docsoptions道具会将配置应用于该特定屏幕。对于常规配置,我们使用screenOptions,我使用了选项中的header属性在一个屏幕上显示自定义标头,但在ios堆栈的其他屏幕上也可以看到它。 在Android上正常工作。

这是代码

import * as React from 'react';
import { View, Text } from 'react-native';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';

function HomeScreen({navigation}) {
  return (
    <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
      <Text onPress={()=>navigation.navigate('Details')}>Home Screen</Text>
    </View>
  );
}

function DetailsScreen() {
  return (
    <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
      <Text>Details Screen</Text>
    </View>
  );
}

const Stack = createStackNavigator();

function App() {
  return (
    <NavigationContainer>
      <Stack.Navigator>
        <Stack.Screen
          name="Home"
          component={HomeScreen}
          options={{ header:props=><View style={{backgroundColor:'red', height:80}} /> }}
        />
         <Stack.Screen
          name="Details"
          component={DetailsScreen}
          options={{ headerShown: false }}
        />
      </Stack.Navigator>
    </NavigationContainer>
  );
}

export default App;

红色标头也在DetailsScreen上可见。

0 个答案:

没有答案