我已经使用React导航版本:5.X创建了一个自定义抽屉导航器, 但是,当前的活动标签不会在自定义抽屉菜单中突出显示。
请找到以下代码图像。如果我有任何错误,请通知我。
导航器代码:
自定义抽屉组件:
当前活动标签页:主页
答案 0 :(得分:9)
您可以使用 DrawerItemList 显示在 Drawer.Navigator 中定义的 Drawer.Screen ,如下所示:-
1)定义抽屉导航器:-
<Drawer.Navigator drawerContentOptions={{ activeBackgroundColor: '#5cbbff', activeTintColor: '#ffffff' }} drawerContent={props => <CustomDrawerContent {...props} />}>
<Drawer.Screen name="Home" component={HomeScreen} options={{
drawerIcon: config => <Icon
size={23}
name={Platform.OS === 'android' ? 'md-list' : 'ios-list'}></Icon>
}} />
/>
2)在CustomDrawerContent函数中:-
<DrawerContentScrollView {...props} >
----- your custom header ----
<DrawerItemList {...props} />
----- add other custom components, if any ----
</DrawerContentScrollView>
那为我解决了这个问题。
答案 1 :(得分:0)
@Vishal Tank将样式添加到js文件中,其中您的类函数就是这样定义的
class Home extends Component
{
....
static navigationOptions =
{
labelStyle: {
fontFamily: 'SomeFont',
color: 'white',
fontSize:24,
paddingLeft:8
},
drawerLabel: 'Home',
drawerIcon: ({tintColor}) =>
(
<Icon name="home" paddingLeft={8} color={tintColor} width={30} size={24} style={{color:tintColor}}/>
)
};
........
render()
{
return(
...........
);
};
};
这是链接,示例在其上给出 https://reactnavigation.org/docs/drawer-based-navigation/