- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
场景:
问题- 根据我过去的解决方案,每当我添加屏幕时,它都会为该屏幕添加一个选项卡。
待办事项:
我希望在导航堆栈中包含选项卡以及其他正常(非选项卡)屏幕。
我未能成功地将两者结合起来,并且尝试了很多以下代码的变体。
尝试过的代码:
const School = createStackNavigator({
School: {
screen: SchoolScreen,
navigationOptions: {
headerTitle: <CustomHeaderTitle screen='school'/>
}
}
});
const Admin = createStackNavigator(
{ Admin: {
screen: AdminScreen,
navigationOptions: {
headerTitle: <CustomHeaderTitle screen='admin' />
}
}
});
const Family = createStackNavigator(
{
Family: {
screen: FamilyScreen,
navigationOptions: {
headerLeft: null,
headerTitle: <CustomHeaderTitle screen='family' />
}
}
}
);
const ChatStack = createStackNavigator({
CreateChat: CreateChatScreen
});
const TabStack = createBottomTabNavigator(
{
School: School,
Admin: Admin,
Family: Family
},
{
navigationOptions: ({ navigation }) => ({
tabBarIcon: () => {
const { routeName } = navigation.state;
return <Image id={1} source={require('./app/img/school_logo.png')} />
},
tabBarLabel: navigation.state.routeName
}),
tabBarOptions: {
activeTintColor: 'tomato',
inactiveTintColor: 'gray',
style: {
backgroundColor: 'black',
height: 55
}
}
}
);
const RootStack = createStackNavigator({
Root: ChatStack,
Tabs: TabStack
})
export default class App extends Component {
render() { return (
<Provider store={store}>
<RootStack />
</Provider>
);
}
}
抱歉,经过一段时间的斗争,我无法格式化这段代码。
感谢您提前提供的任何帮助或建议!
请提出建议。
最佳答案
感谢一位未透露姓名的 Reddit 用户:
您必须将整个堆栈嵌套到选项卡导航器的每个屏幕中。据我所知,如果 StackNavigator 中的不同屏幕嵌套在不同的 TabNavigator 屏幕中,则无法访问它们。
例如,如果您希望能够从 SchoolScreen 导航到聊天屏幕,则必须将该组件包含在您的 School 导航器中。
const School = createStackNavigation({
School: {
screen: SchoolScreen
},
SchoolChat: {
screen: CreateChatScreen
}
});
从那里你的主 TabNavigator 应该看起来差不多
const TabStack = createBottomTabNavigator({
School: School
});
关于javascript - 合并 createStackNavigator 和 createBottomTabNavigator?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51995312/
我正在构建我的第一个练习应用程序,并尝试使用 createAppNavigator 在屏幕之间组合导航。 但是,一旦我尝试使用 createAppNavigator我收到以下错误。 . 相关代码: A
我在 react-native 项目中导入堆栈导航器时遇到问题。我正在使用 JSX 语法。我在下面发布了有关该项目的信息,我希望这些信息与找到此问题的解决方案有关。 以下代码执行导入。它位于一个名为
尝试了很多方法,都没有找到很好的嵌套createDrawerNavigator createBottomTabNavigator createStackNavigator的方案 现在 抽屉(creat
场景: 我有一个应用程序,可使用三个导航选项卡(学校、管理员、家庭); 我现在正在尝试添加其他屏幕,这些屏幕不会有相应的选项卡。这些屏幕将使用类似 this.props.navigation.navi
我想在 ReactNative 上创建一个简单的导航示例。 下面是一段代码; import React, { Component } from 'react'; import { Button, Vi
我正在使用 createStackNavigator内createBottomTabNavigator来自 react-navigation在我的应用程序中。我想在我的屏幕上有一个标题。关注 Reac
我当前的代码 App.js import React from 'react'; import AuthenticationNavigator from 'app/src/navigations/Au
我当前的代码 App.js import React from 'react'; import AuthenticationNavigator from 'app/src/navigations/Au
我在我的应用程序中使用React Navigation。我在标题中使用 createBottomTabNavigator 创建了 createStackNavigator 我试图访问我从屏幕传递的参数
在过去的几天里,我一直在为我的屏幕添加一个动画标题。我在这方面取得了成功,但是我现在想默认将其用作我的标题,而不是将代码复制并粘贴到我希望使用它的所有屏幕中。目前,动画标题在屏幕中实现如下: 要呈现标
我使用 React Navigation 作为我的应用程序的导航器组件。我想更改堆栈导航器的字体系列。目前我这样做是为了更改 iOS 中的字体系列,并且效果很好: const LoggedInStac
我在我的项目中使用了 react-navigation,并弹出此错误。 我用谷歌搜索了这个错误信息,没有找到结果。 (我还不能发图片) 错误信息如下: `createStackNavigator()`
我有一个顶级 App.js 的 react-native 应用程序,即: import { createStackNavigator } from 'react-navigation'; class
当我使用 createStackNavigator 直接指定 drawerLockMode 时,它不起作用。 const drawerStack = createStackNavigator({
我创建了以下代码以导入到 app.js 中 import React from "react"; import { View } from "react-native"; import { creat
请查看 expo snack . 我有一个用于登录和未登录状态的切换导航器。 当用户登录时,切换器加载 DrawerNavigator加载 Screen1并通过 contentComponent 加载
我知道以前有人问过这个问题,但只针对旧版本的 react-navigation。从那时起,一些事情发生了变化。 createBottomTabNavigator 可以更快地创建底部导航器,函数 jum
更新: Git Repo of NotWorkingProject 尝试使用 react-navigation 包在 React Native(Expo-Typescript) 与我们处理常规 Rea
我正在使用 React Native 和 TypeScript 编写应用程序,并使用 React Navigation 进行路由。 在我下载的示例项目中,他们使用 StackNavigator({..
我是一名优秀的程序员,十分优秀!