升级react-native-paper至5.2后,Material-Bottom-Tabs活跃图标样式异常
升级react-native-paper至5.2.0后Material Bottom Tabs活跃图标样式异常的解决
问题现象
将react-native-paper从4.9.2版本升级到5.2.0后,@react-navigation/material-bottom-tabs的活跃图标样式出现不符合预期的变化:
- react-native-paper 4.9.2版本下的活跃图标样式:

- react-native-paper 5.2.0版本下的活跃图标样式:

尝试搜索阴影、背景、高亮相关配置项,均未找到直接解决方法。
可行解决方法
通过PaperProvider包裹整个应用,并传入空主题配置,可消除图标后方的异常元素:
const theme = { colors: { }, }; // 在应用根节点处添加包裹 <PaperProvider theme={theme}> <MyApp /> </PaperProvider>
问题原因
react-native-paper是@react-navigation/material-bottom-tabs的可选依赖,但从5.x版本开始,它的默认主题系统发生变更——即使未主动使用react-native-paper的功能,升级后其默认主题会被自动注入到依赖它的导航组件中,导致活跃图标被添加了额外的背景高亮效果。
使用自定义空主题覆盖默认主题后,即可避免react-native-paper的样式对导航组件产生干扰,恢复至之前的图标样式。
内容的提问来源于stack exchange,提问作者tomwaitforitmy
相关产品推荐
相关产品推荐

