React Native
에서 Navigation
의 Header
를 숨기는 방법에 대해 설명드리겠습니다.
설정 방법 우선 React Native
의 Navigation
의 기본 설정은 여기 를 참고하시기 바랍니다.
tsx 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 import * as React from 'react' ;import {NavigationContainer} from '@react-navigation/native' ;import {createStackNavigator} from '@react-navigation/stack' ;import Home from './src/views/Home' ;const Stack = createStackNavigator();const App = () => { return ( <NavigationContainer> <Stack.Navigator> <Stack.Screen name="Home" component={Home} /> </Stack.Navigator> </ NavigationContainer> ); }; export default App;
App.tsx
의 설정은 공식 홈페이지의 docs
를 참조하여 작성하였습니다. 처음 Navigation
을 생성하게 되면 Header
가 자동으로 생성됩니다. Header
의 옵션을 추가하지 않으면 Stack.Screen
의 name
이 Header
의 Title
로 자동 설정됩니다. 따라서 위와 같이 Header
의 Title
이 Home
으로 설정된 것을 볼 수 있습니다. 하지만 메인 홈에서는 Header
가 필요없는 경우도 있습니다.
tsx 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 import * as React from 'react' ;import {NavigationContainer} from '@react-navigation/native' ;import {createStackNavigator} from '@react-navigation/stack' ;import Home from './src/views/Home' ;const Stack = createStackNavigator();const App = () => { return ( <NavigationContainer> <Stack.Navigator> <Stack.Screen name="Home" component={Home} options={{headerShown: false }} /> </Stack.Navigator> </ NavigationContainer> ); }; export default App;
Stack.Screen
에서 options
의 headerShown: false
옵션을 추가하면 Header
를 제거할 수 있습니다.headerShown: false
옵션을 추가하면 위와 같이 Status bar
아래에 Header
가 없어진 것을 확인할 수 있습니다.