我想删除顶部导航栏。
我试图在路线上设置 showNavigationBar={false},但它仍然存在。
我错过了一些明显的东西吗?
将它用于“路由器”,而不是“路由”。 欢迎提供文档 PR :)
我也试过了,不会删除导航栏:/
让我查一下
您确定先删除了根导航栏吗?
否则,如果您隐藏子项,它将可见......
可以肯定的是,我在大多数可能的地方添加了它
安卓还是iOS? 我刚刚修改了演示,向登录添加了标志,但通常看不到导航栏:
或者您想隐藏“启动”导航栏? 然后可能'wrapRouter'没有将它传递给内部路由器,我会修复它。
<Route name="launch" component={Launch} initial={true} wrapRouter={true} title="Launch"/>
<Route name="register" component={Register} title="Register"/>
<Route name="home" component={Home} title="Replace" type="replace"/>
<Route name="login" schema="modal">
<Router showNavigationBar={false}>
<Route name="loginModal" component={Login} title="Login" schema="modal"/>
<Route name="loginModal2" component={Login2} title="Login2"/>
</Router>
</Route>
<Route name="register2" component={Register} title="Register2" schema="withoutAnimation"/>
<Route name="tabbar">
<Router footer={TabBar} showNavigationBar={false}>
<Route name="tab1" schema="tab" title="Tab #1" >
<Router>
<Route name="tab1_1" component={TabView} title="Tab #1_1" />
<Route name="tab1_2" component={TabView} title="Tab #1_2" />
</Router>
</Route>
<Route name="tab2" schema="tab" title="Tab #2" component={TabView} />
<Route name="tab3" schema="tab" title="Tab #3" component={TabView} />
<Route name="tab4" schema="tab" title="Tab #4" component={TabView} />
<Route name="tab5" schema="tab" title="Tab #5" component={TabView} />
</Router>
</Route>
</Router>
检查 1.0.2 版本,我也在示例中禁用了“启动”屏幕的导航栏。
像魅力一样工作。 谢谢!
这对我有用!
<Router hideNavBar={true} >
也有效。
我尝试了 lakmalniranga 的上述代码,但标题仍然占据一席之地。
https://snag.gy/91aXTj.jpg
hideNavBar = {真}:D
工作 !!!! 谢谢@lakmalniranga
<Scene key="SplashSCreen" component={SplashSCreen} title="splash" hideNavBar={true} initial/>
我们甚至不需要为 hideNavBar 分配 true 值。
如果我们提到它,那么它只是意味着我们给它一个值 true 而不是 undefined。
只是为以后提到这个问题的用户添加。
<Scene
key="SplashSCreen"
component={SplashSCreen}
title="splash"
hideNavBar
initial
/>
任何想法为什么在使用 hideNavBar 时它仍然出现
@Omarkojak您为路由器提供了 65 的 paddingTop。这意味着无论是否有标题(导航栏),每个场景的 paddingTop 都是 65。
好的,很抱歉
有什么办法不仅可以隐藏导航栏,还可以将其删除? 即使隐藏,它仍然占用屏幕空间。
它仍然出现,我不明白为什么
这事有进一步更新吗? 即使隐藏导航仍然需要一些空间
@MehranJanfeshan您是在谈论 v4 版本吗?
@aksonov感谢您的回复,我得到了第 4 版,但出现此错误:
[react-native-router-flux] props should be defined
首先检查重大更改
13июля2017г.,в18:22,MehranJanfeshan [email protected] написал(а):
@aksonov感谢您的回复,我得到了第 4 版,但出现此错误:
[react-native-router-flux] props 应该被定义
—
你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看,或将线程静音。
@aksonov我发现在旧版本中我能够做到这一点:
<Router sceneStyle={{margin:0}} hideNavBar={true}>
<Scene key="auth">
<Scene key="login" component={AuthScreen}/>
</Scene>
<Scene key="main">
<Scene
onRight={() => Actions.auth()}
rightTitle="Log out"
key="newOrderList"
component={EmployeeList}
title="New Orders"
initial
/>
<Scene key="orderDetails" component={OrderDetails} title="Order Details"/>
</Scene>
</Router>
但是在我移动到版本 4 之后我不能这样做,所以我改变了这个并且它起作用了:
<Router sceneStyle={{margin:0}} hideNavBar={true}>
<Scene key="auth">
<Scene key="login" component={AuthScreen}/>
<Scene
onRight={() => Actions.auth()}
rightTitle="Log out"
key="newOrderList"
component={EmployeeList}
title="New Orders"
initial
/>
<Scene key="orderDetails" component={OrderDetails} title="Order Details"/>
</Scene>
</Router>
但这不是我想要的,我希望能够对场景进行分类,还有其他选择吗?
我不明白这个问题。 请检查示例并尝试在那里重现您的问题。
13июля2017г.,в18:45,MehranJanfeshan [email protected] написал(а):
@aksonov我发现在旧版本中我能够做到这一点:
但是在我移动到版本 4 之后我不能这样做,所以我改变了这个并且它起作用了:
但这不是我想要的,我希望能够对场景进行分类,还有其他选择吗?
—
你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看,或将线程静音。
这是我的代码在版本 3 中完美运行,但是当我升级到版本 4 时出现此错误:
[react-native-router-flux] props should be defined
所以我删除了被蓝线包围的部分,它工作正常。
用一个根场景包裹它。
13июля2017г.,в18点55分,MehranJanfeshan [email protected] написал(а):
这是我的代码在版本 3 中完美运行,但是当我升级到版本 4 时出现此错误:
[react-native-router-flux] props 应该被定义
所以我删除了被蓝线包围的部分,它工作正常。—
你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看,或将线程静音。
如果我用一个根场景包装它,那么我如何控制后退按钮? 我不希望用户能够返回登录页面,这就是为什么我曾经使用 Scene。
这不是关于 RNRF 的问题,而是关于您的应用程序结构的问题。 我猜您需要使用tabs
或禁用后退按钮(用 'init' 属性标记)或使用 'replace' 类型。 检查示例。
实际上 v3 只是将多个场景合二为一,所以您不会看到任何后退按钮(因为您隐藏了父导航栏)
@aksonov感谢您的帮助,感谢您的出色工作:)
这对我有用: <Scene key="homeScreen" component={mainScreen} hideNavBar={1} />
你可以只使用<Scene key="homeScreen" component={mainScreen} hideNavBar
/>
@lakmalniranga这对我
作品
const RouterComponent = () => (
<Router headerMode="none">
<Stack key="main">
<Scene
key="login"
component={Login}
/>
</Stack>
</Router>
);
@ahmetilhann谢谢! 删除路由器中子场景的所有标头,从 v4.0.0-beta.3 开始仍然有效。
@ahmetilhann非常感谢! 也许旧的方式只适用于 4.0 之前的 RN? 我在 4.0.6 和headerMode="none"
工作
将我的项目升级到 RN0.59.10,但仍然对路由器和场景使用 react-native-router-flux。 并且有这个白色标题栏问题。 花了我几天时间,我一直怀疑这是由于 react-navigation 并设法将其关闭但仍然有另一个标题挡住了视图,然后只有我想到可能是由于 react-native-router-flux。 @ahmetilhann方法有效。 在路由器上设置 headerMode="none",救命!!!
这对我有用!
说到点子上
你好,
使用 hideNavBar 使孔组件消失。
这是我的代码:
<Router>
<Stack key="root" >
<Scene key="login" component={Login} title="Login" initial={true} hideNavBar={true}/>
<Scene key="signup" component={Signup} title="Signup" />
</Stack>
</Router>
可能是什么原因?
你好,
使用 hideNavBar 使孔组件消失。
这是我的代码:<Router> <Stack key="root" > <Scene key="login" component={Login} title="Login" initial={true} hideNavBar={true}/> <Scene key="signup" component={Signup} title="Signup" /> </Stack> </Router>
可能是什么原因?
我也有同样的问题。
最有用的评论
这对我有用!