我正在使用react-navigation
createBottomTabNavigator
创建底部标签导航。标签栏在 iOS 上显示正常,但在 Android 上显示如下:
我不确定是什么导致了这种奇怪的造型。下面是我创建底部标签栏的代码:
<Provider store={store}>
<NavigationContainer theme={GlobalConfig.theme}>
<Tab.Navigator
screenOptions={({route}) => ({
tabBarIcon: ({focused, color, size}) => {
let iconSrc
if (route.name === 'Alarms') {
iconSrc = require('../img/ic_alarm.png')
} else if (route.name === 'Settings') {
iconSrc = require('../img/ic_settings.png')
}
return (
<Image
source={iconSrc}
style={{
tintColor: focused
? GlobalConfig.theme.colors.primary
: GlobalConfig.theme.colors.tabBarIconUnselected
}}
/>
)
}
})}
tabBarOptions={{
activeTintColor: GlobalConfig.theme.colors.primary,
inactiveTintColor: GlobalConfig.theme.colors.tabBarIconUnselected
}}>
<Tab.Screen name={I18n.t('alarms')} component={AlarmsTab} />
<Tab.Screen name={I18n.t('settings')} component={SettingsTab} />
</Tab.Navigator>
</NavigationContainer>
</Provider>
每个选项卡都是一个堆栈导航器。警报堆栈导航配置如下:
<Stack.Navigator
initialRouteName="AlarmListScreen"
screenOptions={{
headerStyle: {
backgroundColor: GlobalConfig.theme.colors.primary
},
headerTintColor: GlobalConfig.theme.colors.background
}}>
<Stack.Screen
name="AlarmListScreen"
component={AlarmListScreen}
options={{title: I18n.t('alarms')}}
/>
<Stack.Screen
name="AlarmDetailsScreen"
component={AlarmDetailsScreen}
options={{title: 'Alarm Details'}}
/>
</Stack.Navigator>
如果您过去遇到过此问题并知道如何解决,请告诉我。如果您需要任何其他信息来解决问题,也请告诉我。
谢谢!