我正在尝试隐藏应用程序中特定页面的整个标签栏。 我也试图将其隐藏在路由和容器内部。 但是,它没有用。在两种情况下,我都可以隐藏标题导航栏,但它不起作用 对于tabBar。 以下是我的尝试代码:
<Scene
key="showBarcodeScanner"
hideNavBar
hideTabBar
{...DefaultProps.navbarProps}
iosStatusbar="light-content"
component={BarcodeScan}
/>
以下方法也不起作用
static navigationOptions = ({ navigation }) => ({
header: null,
tabBarVisible: false
});
我已经检查了源,并且有一种逻辑可以隐藏选项卡(尽管没有深入)。
if (navigationParams.hideTabBar != null) {
if (navigationParams.hideTabBar) {
res.tabBarVisible = false;
}
} else if (hideTabBar) {
res.tabBarVisible = false;
}
我想念什么吗?还有其他方法可以隐藏特定页面的标签栏吗?
答案 0 :(得分:0)
请参见React Native Router的Readme。
Actions.refresh({key: 'showBarcodeScanner', hideNavBar: true, hideTabBar: true});
希望有帮助,您可以放置要刷新的任何参数。
答案 1 :(得分:0)
经过研究,我找到了解决方案。
我想隐藏的场景位于堆栈中,该堆栈位于路线中选项卡下。 根据官方消息,如果没有改组导航器,以下代码将无法正常工作: React Navigation
tabBarVisible: false
我刚刚在Tabs上方创建了一个新Stack,问题已解决。