졸업프로젝트
[React Native] 탭 구현하기
valid_ming
2020. 12. 2. 10:47
이 글은 여기를 참고하여 작성되었습니다.
지난번 버튼을 눌러 화면을 이동하는 법에 이어 탭을 구현해 보았습니다.
React Native에서 탭 자체는 createBottomTabNavigator를 이용하여 만든 후
createAppContainer에 생성한 TabNavigator를 담아 export 하는 방식으로 만든다
App.js
import {createAppContainer} from 'react-navigation';
import React from 'react';
import {createBottomTabNavigator} from 'react-navigation-tabs';
import Ionicons from 'react-native-vector-icons/Ionicons';
import Mypage from './Mypage';
import Mainpage from './Mainpage';
import Searchpage from './Searchpage';
const TabNavigator = createBottomTabNavigator({
Mainpage: {
screen: Mainpage,
color:'#f08080',
},
Searchpage: {
screen: Searchpage,
},
Mypage: {
screen: Mypage,
},
},
{
defaultNavigationOptions: ({navigation}) => ({
tabBarIcon: ({horizontal}) => {
const {routeName} = navigation.state;
let iconName;
if (routeName === 'Mypage') {
iconName = 'ios-person';
} else if (routeName === 'Mainpage') {
iconName = 'ios-book';
}else if (routeName === 'Searchpage') {
iconName = 'ios-search';
}
return (
<Ionicons
name={iconName}
size={horizontal ? 28 : 35}
color='#00bfff'
/>
);
},
tabBarOptions: {
style: {height:60},
color:"#f08080",
}
}),
},
);
export default createAppContainer(TabNavigator);
클릭된 routeName에 맞게 icon과 색상을 설정해주면 아래 화면같이 나타난다.
