我正在寻找一种方法来仅为我的应用程序隐藏第一个选项卡上的选项卡栏。
[编辑更多细节]
我试过这个:
Navigation.setRoot({
root: {
bottomTabs: {
id: "BottomTabsId",
children: [
{
stack: {
children: [
{
component: {
name: "HomeScreenController",
passProps: {
client,
user
}
}
}
],
options: {
bottomTabs: {
visible: false,
drawBehind: true,
translucent: true
},
bottomTab: {
text: _strings.home,
icon: _images.tabIcons.home,
testID: "FIRST_TAB_BAR_BUTTON"
}
}
}
}, ...
结果是选项卡栏显示在初始屏幕上,然后当我切换到另一个选项卡(以编程方式完成切换)时实际隐藏,这与我想要的相反。
我也尝试setRoot
在堆栈和底部标签之间使用。然后,我在 index0 有一个组件,它只监听到索引 0 的选项卡切换,然后执行一个setRoot
转到堆栈布局。从堆栈布局中,我有按钮setRoot
返回到所选索引处的底部标签。这样做的问题是每次我都需要重新加载应用程序setRoot
,而且它比它需要的慢一点。此外,我监听选项卡开关的组件似乎没有留下内存,并且我放在那里的 console.log 每次调用时都会不断堆积setRoot
。