React Native
에서 Navigation
의 Header
를 숨기는 방법에 대해 설명드리겠습니다.
설정 방법
우선 React Native
의 Navigation
의 기본 설정은 여기를 참고하시기 바랍니다.
tsx1 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
가 필요없는 경우도 있습니다.
tsx1 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
가 없어진 것을 확인할 수 있습니다.